.class public Landroidx/core/view/AccessibilityDelegateCompat; .super Ljava/lang/Object; .source "SourceFile" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/core/view/AccessibilityDelegateCompat$AccessibilityDelegateAdapter; } .end annotation # static fields .field private static final DEFAULT_DELEGATE:Landroid/view/View$AccessibilityDelegate; # instance fields .field private final mBridge:Landroid/view/View$AccessibilityDelegate; .field private final mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; # direct methods .method static constructor ()V .locals 1 .line 132 new-instance v0, Landroid/view/View$AccessibilityDelegate; invoke-direct {v0}, Landroid/view/View$AccessibilityDelegate;->()V sput-object v0, Landroidx/core/view/AccessibilityDelegateCompat;->DEFAULT_DELEGATE:Landroid/view/View$AccessibilityDelegate; return-void .end method .method public constructor ()V .locals 1 sget-object v0, Landroidx/core/view/AccessibilityDelegateCompat;->DEFAULT_DELEGATE:Landroid/view/View$AccessibilityDelegate; .line 141 invoke-direct {p0, v0}, Landroidx/core/view/AccessibilityDelegateCompat;->(Landroid/view/View$AccessibilityDelegate;)V return-void .end method .method public constructor (Landroid/view/View$AccessibilityDelegate;)V .locals 0 .param p1 # Landroid/view/View$AccessibilityDelegate; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation .line 147 invoke-direct {p0}, Ljava/lang/Object;->()V iput-object p1, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 149 new-instance p1, Landroidx/core/view/AccessibilityDelegateCompat$AccessibilityDelegateAdapter; invoke-direct {p1, p0}, Landroidx/core/view/AccessibilityDelegateCompat$AccessibilityDelegateAdapter;->(Landroidx/core/view/AccessibilityDelegateCompat;)V iput-object p1, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mBridge:Landroid/view/View$AccessibilityDelegate; return-void .end method .method public static getActionList(Landroid/view/View;)Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/view/View;", ")", "Ljava/util/List<", "Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityActionCompat;", ">;" } .end annotation sget v0, Landroidx/core/R$id;->tag_accessibility_actions:I .line 406 invoke-virtual {p0, v0}, Landroid/view/View;->getTag(I)Ljava/lang/Object; move-result-object p0 check-cast p0, Ljava/util/List; if-nez p0, :cond_0 .line 407 invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List; move-result-object p0 :cond_0 return-object p0 .end method .method private isSpanStillValid(Landroid/text/style/ClickableSpan;Landroid/view/View;)Z .locals 3 const/4 v0, 0x0 if-eqz p1, :cond_1 .line 392 invoke-virtual {p2}, Landroid/view/View;->createAccessibilityNodeInfo()Landroid/view/accessibility/AccessibilityNodeInfo; move-result-object p2 .line 393 invoke-virtual {p2}, Landroid/view/accessibility/AccessibilityNodeInfo;->getText()Ljava/lang/CharSequence; move-result-object p2 invoke-static {p2}, Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat;->getClickableSpans(Ljava/lang/CharSequence;)[Landroid/text/style/ClickableSpan; move-result-object p2 move v1, v0 :goto_0 if-eqz p2, :cond_1 .line 394 array-length v2, p2 if-ge v1, v2, :cond_1 .line 395 aget-object v2, p2, v1 invoke-virtual {p1, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v2 if-eqz v2, :cond_0 const/4 p1, 0x1 return p1 :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_1 return v0 .end method .method private performClickableSpanAction(ILandroid/view/View;)Z .locals 1 sget v0, Landroidx/core/R$id;->tag_accessibility_clickable_spans:I .line 376 invoke-virtual {p2, v0}, Landroid/view/View;->getTag(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/util/SparseArray; if-eqz v0, :cond_0 .line 378 invoke-virtual {v0, p1}, Landroid/util/SparseArray;->get(I)Ljava/lang/Object; move-result-object p1 check-cast p1, Ljava/lang/ref/WeakReference; if-eqz p1, :cond_0 .line 380 invoke-virtual {p1}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/text/style/ClickableSpan; .line 381 invoke-direct {p0, p1, p2}, Landroidx/core/view/AccessibilityDelegateCompat;->isSpanStillValid(Landroid/text/style/ClickableSpan;Landroid/view/View;)Z move-result v0 if-eqz v0, :cond_0 .line 382 invoke-virtual {p1, p2}, Landroid/text/style/ClickableSpan;->onClick(Landroid/view/View;)V const/4 p1, 0x1 return p1 :cond_0 const/4 p1, 0x0 return p1 .end method # virtual methods .method public dispatchPopulateAccessibilityEvent(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)Z .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/view/accessibility/AccessibilityEvent; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 219 invoke-virtual {v0, p1, p2}, Landroid/view/View$AccessibilityDelegate;->dispatchPopulateAccessibilityEvent(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)Z move-result p1 return p1 .end method .method public getAccessibilityNodeProvider(Landroid/view/View;)Landroidx/core/view/accessibility/AccessibilityNodeProviderCompat; .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/Nullable; .end annotation iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 325 invoke-virtual {v0, p1}, Landroid/view/View$AccessibilityDelegate;->getAccessibilityNodeProvider(Landroid/view/View;)Landroid/view/accessibility/AccessibilityNodeProvider; move-result-object p1 if-eqz p1, :cond_0 .line 327 new-instance v0, Landroidx/core/view/accessibility/AccessibilityNodeProviderCompat; invoke-direct {v0, p1}, Landroidx/core/view/accessibility/AccessibilityNodeProviderCompat;->(Ljava/lang/Object;)V return-object v0 :cond_0 const/4 p1, 0x0 return-object p1 .end method .method public getBridge()Landroid/view/View$AccessibilityDelegate; .locals 1 iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mBridge:Landroid/view/View$AccessibilityDelegate; return-object v0 .end method .method public onInitializeAccessibilityEvent(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)V .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/view/accessibility/AccessibilityEvent; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 261 invoke-virtual {v0, p1, p2}, Landroid/view/View$AccessibilityDelegate;->onInitializeAccessibilityEvent(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)V return-void .end method .method public onInitializeAccessibilityNodeInfo(Landroid/view/View;Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat;)V .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 282 invoke-virtual {p2}, Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat;->unwrap()Landroid/view/accessibility/AccessibilityNodeInfo; move-result-object p2 .line 281 invoke-virtual {v0, p1, p2}, Landroid/view/View$AccessibilityDelegate;->onInitializeAccessibilityNodeInfo(Landroid/view/View;Landroid/view/accessibility/AccessibilityNodeInfo;)V return-void .end method .method public onPopulateAccessibilityEvent(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)V .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/view/accessibility/AccessibilityEvent; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 240 invoke-virtual {v0, p1, p2}, Landroid/view/View$AccessibilityDelegate;->onPopulateAccessibilityEvent(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)V return-void .end method .method public onRequestSendAccessibilityEvent(Landroid/view/ViewGroup;Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)Z .locals 1 .param p1 # Landroid/view/ViewGroup; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p3 # Landroid/view/accessibility/AccessibilityEvent; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 306 invoke-virtual {v0, p1, p2, p3}, Landroid/view/View$AccessibilityDelegate;->onRequestSendAccessibilityEvent(Landroid/view/ViewGroup;Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)Z move-result p1 return p1 .end method .method public performAccessibilityAction(Landroid/view/View;ILandroid/os/Bundle;)Z .locals 5 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p3 # Landroid/os/Bundle; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 354 invoke-static {p1}, Landroidx/core/view/AccessibilityDelegateCompat;->getActionList(Landroid/view/View;)Ljava/util/List; move-result-object v0 const/4 v1, 0x0 move v2, v1 .line 355 :goto_0 invoke-interface {v0}, Ljava/util/List;->size()I move-result v3 if-ge v2, v3, :cond_1 .line 356 invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v3 check-cast v3, Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityActionCompat; .line 357 invoke-virtual {v3}, Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityActionCompat;->getId()I move-result v4 if-ne v4, p2, :cond_0 .line 358 invoke-virtual {v3, p1, p3}, Landroidx/core/view/accessibility/AccessibilityNodeInfoCompat$AccessibilityActionCompat;->perform(Landroid/view/View;Landroid/os/Bundle;)Z move-result v1 goto :goto_1 :cond_0 add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_1 :goto_1 if-nez v1, :cond_2 iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 363 invoke-virtual {v0, p1, p2, p3}, Landroid/view/View$AccessibilityDelegate;->performAccessibilityAction(Landroid/view/View;ILandroid/os/Bundle;)Z move-result v1 :cond_2 if-nez v1, :cond_3 sget v0, Landroidx/core/R$id;->accessibility_action_clickable_span:I if-ne p2, v0, :cond_3 if-eqz p3, :cond_3 const-string p2, "ACCESSIBILITY_CLICKABLE_SPAN_ID" const/4 v0, -0x1 .line 367 invoke-virtual {p3, p2, v0}, Landroid/os/BaseBundle;->getInt(Ljava/lang/String;I)I move-result p2 .line 366 invoke-direct {p0, p2, p1}, Landroidx/core/view/AccessibilityDelegateCompat;->performClickableSpanAction(ILandroid/view/View;)Z move-result v1 :cond_3 return v1 .end method .method public sendAccessibilityEvent(Landroid/view/View;I)V .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 174 invoke-virtual {v0, p1, p2}, Landroid/view/View$AccessibilityDelegate;->sendAccessibilityEvent(Landroid/view/View;I)V return-void .end method .method public sendAccessibilityEventUnchecked(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)V .locals 1 .param p1 # Landroid/view/View; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/view/accessibility/AccessibilityEvent; .annotation build Landroidx/annotation/NonNull; .end annotation .end param iget-object v0, p0, Landroidx/core/view/AccessibilityDelegateCompat;->mOriginalDelegate:Landroid/view/View$AccessibilityDelegate; .line 197 invoke-virtual {v0, p1, p2}, Landroid/view/View$AccessibilityDelegate;->sendAccessibilityEventUnchecked(Landroid/view/View;Landroid/view/accessibility/AccessibilityEvent;)V return-void .end method