.class Landroidx/transition/ViewUtilsApi21; .super Landroidx/transition/ViewUtilsApi19; .source "ViewUtilsApi21.java" # annotations .annotation build Landroidx/annotation/RequiresApi; value = 0x15 .end annotation # static fields .field private static final TAG:Ljava/lang/String; = "ViewUtilsApi21" .field private static sSetAnimationMatrixMethod:Ljava/lang/reflect/Method; .field private static sSetAnimationMatrixMethodFetched:Z .field private static sTransformMatrixToGlobalMethod:Ljava/lang/reflect/Method; .field private static sTransformMatrixToGlobalMethodFetched:Z .field private static sTransformMatrixToLocalMethod:Ljava/lang/reflect/Method; .field private static sTransformMatrixToLocalMethodFetched:Z # direct methods .method constructor ()V .locals 0 invoke-direct {p0}, Landroidx/transition/ViewUtilsApi19;->()V return-void .end method .method private fetchSetAnimationMatrix()V .locals 6 sget-boolean v0, Landroidx/transition/ViewUtilsApi21;->sSetAnimationMatrixMethodFetched:Z if-nez v0, :cond_0 const/4 v0, 0x1 :try_start_0 const-class v1, Landroid/view/View; const-string v2, "setAnimationMatrix" new-array v3, v0, [Ljava/lang/Class; const/4 v4, 0x0 const-class v5, Landroid/graphics/Matrix; aput-object v5, v3, v4 invoke-virtual {v1, v2, v3}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v1 sput-object v1, Landroidx/transition/ViewUtilsApi21;->sSetAnimationMatrixMethod:Ljava/lang/reflect/Method; invoke-virtual {v1, v0}, Ljava/lang/reflect/Method;->setAccessible(Z)V :try_end_0 .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v1 const-string v2, "ViewUtilsApi21" const-string v3, "Failed to retrieve setAnimationMatrix method" invoke-static {v2, v3, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :goto_0 sput-boolean v0, Landroidx/transition/ViewUtilsApi21;->sSetAnimationMatrixMethodFetched:Z :cond_0 return-void .end method .method private fetchTransformMatrixToGlobalMethod()V .locals 6 sget-boolean v0, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToGlobalMethodFetched:Z if-nez v0, :cond_0 const/4 v0, 0x1 :try_start_0 const-class v1, Landroid/view/View; const-string v2, "transformMatrixToGlobal" new-array v3, v0, [Ljava/lang/Class; const/4 v4, 0x0 const-class v5, Landroid/graphics/Matrix; aput-object v5, v3, v4 invoke-virtual {v1, v2, v3}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v1 sput-object v1, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToGlobalMethod:Ljava/lang/reflect/Method; invoke-virtual {v1, v0}, Ljava/lang/reflect/Method;->setAccessible(Z)V :try_end_0 .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v1 const-string v2, "ViewUtilsApi21" const-string v3, "Failed to retrieve transformMatrixToGlobal method" invoke-static {v2, v3, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :goto_0 sput-boolean v0, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToGlobalMethodFetched:Z :cond_0 return-void .end method .method private fetchTransformMatrixToLocalMethod()V .locals 6 sget-boolean v0, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToLocalMethodFetched:Z if-nez v0, :cond_0 const/4 v0, 0x1 :try_start_0 const-class v1, Landroid/view/View; const-string v2, "transformMatrixToLocal" new-array v3, v0, [Ljava/lang/Class; const/4 v4, 0x0 const-class v5, Landroid/graphics/Matrix; aput-object v5, v3, v4 invoke-virtual {v1, v2, v3}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v1 sput-object v1, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToLocalMethod:Ljava/lang/reflect/Method; invoke-virtual {v1, v0}, Ljava/lang/reflect/Method;->setAccessible(Z)V :try_end_0 .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v1 const-string v2, "ViewUtilsApi21" const-string v3, "Failed to retrieve transformMatrixToLocal method" invoke-static {v2, v3, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :goto_0 sput-boolean v0, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToLocalMethodFetched:Z :cond_0 return-void .end method # virtual methods .method public setAnimationMatrix(Landroid/view/View;Landroid/graphics/Matrix;)V .locals 3 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param invoke-direct {p0}, Landroidx/transition/ViewUtilsApi21;->fetchSetAnimationMatrix()V sget-object v0, Landroidx/transition/ViewUtilsApi21;->sSetAnimationMatrixMethod:Ljava/lang/reflect/Method; if-eqz v0, :cond_0 const/4 v1, 0x1 :try_start_0 new-array v1, v1, [Ljava/lang/Object; const/4 v2, 0x0 aput-object p2, v1, v2 invoke-virtual {v0, p1, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; :try_end_0 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_0 return-void :catch_0 move-exception p1 new-instance p2, Ljava/lang/RuntimeException; invoke-virtual {p1}, Ljava/lang/IllegalAccessException;->getCause()Ljava/lang/Throwable; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/RuntimeException;->(Ljava/lang/Throwable;)V throw p2 :catch_1 return-void :cond_0 return-void .end method .method public transformMatrixToGlobal(Landroid/view/View;Landroid/graphics/Matrix;)V .locals 3 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/graphics/Matrix; .annotation build Landroidx/annotation/NonNull; .end annotation .end param invoke-direct {p0}, Landroidx/transition/ViewUtilsApi21;->fetchTransformMatrixToGlobalMethod()V sget-object v0, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToGlobalMethod:Ljava/lang/reflect/Method; if-eqz v0, :cond_0 const/4 v1, 0x1 :try_start_0 new-array v1, v1, [Ljava/lang/Object; const/4 v2, 0x0 aput-object p2, v1, v2 invoke-virtual {v0, p1, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; :try_end_0 .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_0 return-void :catch_0 move-exception p1 new-instance p2, Ljava/lang/RuntimeException; invoke-virtual {p1}, Ljava/lang/reflect/InvocationTargetException;->getCause()Ljava/lang/Throwable; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/RuntimeException;->(Ljava/lang/Throwable;)V throw p2 :catch_1 return-void :cond_0 return-void .end method .method public transformMatrixToLocal(Landroid/view/View;Landroid/graphics/Matrix;)V .locals 3 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/graphics/Matrix; .annotation build Landroidx/annotation/NonNull; .end annotation .end param invoke-direct {p0}, Landroidx/transition/ViewUtilsApi21;->fetchTransformMatrixToLocalMethod()V sget-object v0, Landroidx/transition/ViewUtilsApi21;->sTransformMatrixToLocalMethod:Ljava/lang/reflect/Method; if-eqz v0, :cond_0 const/4 v1, 0x1 :try_start_0 new-array v1, v1, [Ljava/lang/Object; const/4 v2, 0x0 aput-object p2, v1, v2 invoke-virtual {v0, p1, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; :try_end_0 .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_0 return-void :catch_0 move-exception p1 new-instance p2, Ljava/lang/RuntimeException; invoke-virtual {p1}, Ljava/lang/reflect/InvocationTargetException;->getCause()Ljava/lang/Throwable; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/RuntimeException;->(Ljava/lang/Throwable;)V throw p2 :catch_1 return-void :cond_0 return-void .end method