class android.widget.Editor$TextActionModeCallback extends android.view.ActionMode$Callback2
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: android.widget.Editor$TextActionModeCallback
  super_class: android.view.ActionMode$Callback2
{
  private final android.graphics.Path mSelectionPath;
    descriptor: Landroid/graphics/Path;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.graphics.RectF mSelectionBounds;
    descriptor: Landroid/graphics/RectF;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean mHasSelection;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int mHandleHeight;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<android.view.MenuItem, android.view.View$OnClickListener> mAssistClickHandlers;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Landroid/view/MenuItem;Landroid/view/View$OnClickListener;>;

  final android.widget.Editor this$0;
    descriptor: Landroid/widget/Editor;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(android.widget.Editor, int);
    descriptor: (Landroid/widget/Editor;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 2 // int mode
         0: .line 3907
            aload 0 /* this */
            aload 1
            putfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            aload 0 /* this */
            invokespecial android.view.ActionMode$Callback2.<init>:()V
         1: .line 3901
            aload 0 /* this */
            new android.graphics.Path
            dup
            invokespecial android.graphics.Path.<init>:()V
            putfield android.widget.Editor$TextActionModeCallback.mSelectionPath:Landroid/graphics/Path;
         2: .line 3902
            aload 0 /* this */
            new android.graphics.RectF
            dup
            invokespecial android.graphics.RectF.<init>:()V
            putfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
         3: .line 3905
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield android.widget.Editor$TextActionModeCallback.mAssistClickHandlers:Ljava/util/Map;
         4: .line 3908
            aload 0 /* this */
            iload 2 /* mode */
            ifeq 7
         5: .line 3909
            aload 1
            getfield android.widget.Editor.mTextIsSelectable:Z
            ifeq 6
            iload 2 /* mode */
            iconst_2
            if_icmpeq 7
      StackMap locals: android.widget.Editor$TextActionModeCallback android.widget.Editor int
      StackMap stack: android.widget.Editor$TextActionModeCallback
         6: iconst_0
            goto 8
      StackMap locals:
      StackMap stack: android.widget.Editor$TextActionModeCallback
         7: iconst_1
         8: .line 3908
      StackMap locals: android.widget.Editor$TextActionModeCallback android.widget.Editor int
      StackMap stack: android.widget.Editor$TextActionModeCallback int
            putfield android.widget.Editor$TextActionModeCallback.mHasSelection:Z
         9: .line 3910
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mHasSelection:Z
            ifeq 20
        10: .line 3911
            aload 1
            invokevirtual android.widget.Editor.getSelectionController:()Landroid/widget/Editor$SelectionModifierCursorController;
            astore 3 /* selectionController */
        start local 3 // android.widget.Editor$SelectionModifierCursorController selectionController
        11: .line 3912
            aload 3 /* selectionController */
            getfield android.widget.Editor$SelectionModifierCursorController.mStartHandle:Landroid/widget/Editor$SelectionHandleView;
            ifnonnull 15
        12: .line 3914
            aload 3 /* selectionController */
            invokevirtual android.widget.Editor$SelectionModifierCursorController.initDrawables:()V
        13: .line 3915
            aload 3 /* selectionController */
            invokevirtual android.widget.Editor$SelectionModifierCursorController.initHandles:()V
        14: .line 3916
            aload 3 /* selectionController */
            invokevirtual android.widget.Editor$SelectionModifierCursorController.hide:()V
        15: .line 3918
      StackMap locals: android.widget.Editor$SelectionModifierCursorController
      StackMap stack:
            aload 0 /* this */
        16: .line 3919
            aload 1
            getfield android.widget.Editor.mSelectHandleLeft:Landroid/graphics/drawable/Drawable;
            invokevirtual android.graphics.drawable.Drawable.getMinimumHeight:()I
        17: .line 3920
            aload 1
            getfield android.widget.Editor.mSelectHandleRight:Landroid/graphics/drawable/Drawable;
            invokevirtual android.graphics.drawable.Drawable.getMinimumHeight:()I
        18: .line 3918
            invokestatic java.lang.Math.max:(II)I
            putfield android.widget.Editor$TextActionModeCallback.mHandleHeight:I
        end local 3 // android.widget.Editor$SelectionModifierCursorController selectionController
        19: .line 3921
            goto 26
        20: .line 3922
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual android.widget.Editor.getInsertionController:()Landroid/widget/Editor$InsertionPointCursorController;
            astore 3 /* insertionController */
        start local 3 // android.widget.Editor$InsertionPointCursorController insertionController
        21: .line 3923
            aload 3 /* insertionController */
            ifnull 25
        22: .line 3924
            aload 3 /* insertionController */
            invokevirtual android.widget.Editor$InsertionPointCursorController.getHandle:()Landroid/widget/Editor$InsertionHandleView;
            pop
        23: .line 3925
            aload 0 /* this */
            aload 1
            getfield android.widget.Editor.mSelectHandleCenter:Landroid/graphics/drawable/Drawable;
            invokevirtual android.graphics.drawable.Drawable.getMinimumHeight:()I
            putfield android.widget.Editor$TextActionModeCallback.mHandleHeight:I
        24: .line 3926
            goto 26
        25: .line 3927
      StackMap locals: android.widget.Editor$InsertionPointCursorController
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.widget.Editor$TextActionModeCallback.mHandleHeight:I
        end local 3 // android.widget.Editor$InsertionPointCursorController insertionController
        26: .line 3930
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int mode
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   27     0                 this  Landroid/widget/Editor$TextActionModeCallback;
            0   27     2                 mode  I
           11   19     3  selectionController  Landroid/widget/Editor$SelectionModifierCursorController;
           21   26     3  insertionController  Landroid/widget/Editor$InsertionPointCursorController;
    RuntimeInvisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        android.widget.Editor$TextActionMode()
    RuntimeInvisibleParameterAnnotations: 
      0:
        android.widget.Editor$TextActionMode()
      1:
    MethodParameters:
        Name  Flags
      this$0  final
      mode    

  public boolean onCreateActionMode(android.view.ActionMode, android.view.Menu);
    descriptor: (Landroid/view/ActionMode;Landroid/view/Menu;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.ActionMode mode
        start local 2 // android.view.Menu menu
         0: .line 3934
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mAssistClickHandlers:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         1: .line 3936
            aload 1 /* mode */
            aconst_null
            invokevirtual android.view.ActionMode.setTitle:(Ljava/lang/CharSequence;)V
         2: .line 3937
            aload 1 /* mode */
            aconst_null
            invokevirtual android.view.ActionMode.setSubtitle:(Ljava/lang/CharSequence;)V
         3: .line 3938
            aload 1 /* mode */
            iconst_1
            invokevirtual android.view.ActionMode.setTitleOptionalHint:(Z)V
         4: .line 3939
            aload 0 /* this */
            aload 2 /* menu */
            invokevirtual android.widget.Editor$TextActionModeCallback.populateMenuWithItems:(Landroid/view/Menu;)V
         5: .line 3941
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.getCustomCallback:()Landroid/view/ActionMode$Callback;
            astore 3 /* customCallback */
        start local 3 // android.view.ActionMode$Callback customCallback
         6: .line 3942
            aload 3 /* customCallback */
            ifnull 12
         7: .line 3943
            aload 3 /* customCallback */
            aload 1 /* mode */
            aload 2 /* menu */
            invokeinterface android.view.ActionMode$Callback.onCreateActionMode:(Landroid/view/ActionMode;Landroid/view/Menu;)Z
            ifne 12
         8: .line 3945
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getText:()Ljava/lang/CharSequence;
            checkcast android.text.Spannable
         9: .line 3946
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionEnd:()I
        10: .line 3945
            invokestatic android.text.Selection.setSelection:(Landroid/text/Spannable;I)V
        11: .line 3947
            iconst_0
            ireturn
        12: .line 3951
      StackMap locals: android.view.ActionMode$Callback
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.canProcessText:()Z
            ifeq 14
        13: .line 3952
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mProcessTextIntentActionsHandler:Landroid/widget/Editor$ProcessTextIntentActionsHandler;
            aload 2 /* menu */
            invokevirtual android.widget.Editor$ProcessTextIntentActionsHandler.onInitializeMenu:(Landroid/view/Menu;)V
        14: .line 3955
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mHasSelection:Z
            ifeq 16
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.hasTransientState:()Z
            ifne 16
        15: .line 3956
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            iconst_1
            invokevirtual android.widget.TextView.setHasTransientState:(Z)V
        16: .line 3958
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // android.view.ActionMode$Callback customCallback
        end local 2 // android.view.Menu menu
        end local 1 // android.view.ActionMode mode
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Landroid/widget/Editor$TextActionModeCallback;
            0   17     1            mode  Landroid/view/ActionMode;
            0   17     2            menu  Landroid/view/Menu;
            6   17     3  customCallback  Landroid/view/ActionMode$Callback;
    MethodParameters:
      Name  Flags
      mode  
      menu  

  private android.view.ActionMode$Callback getCustomCallback();
    descriptor: ()Landroid/view/ActionMode$Callback;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.Editor$TextActionModeCallback this
         0: .line 3962
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mHasSelection:Z
            ifeq 2
         1: .line 3963
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mCustomSelectionActionModeCallback:Landroid/view/ActionMode$Callback;
            goto 3
         2: .line 3964
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mCustomInsertionActionModeCallback:Landroid/view/ActionMode$Callback;
         3: .line 3962
      StackMap locals:
      StackMap stack: android.view.ActionMode$Callback
            areturn
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/widget/Editor$TextActionModeCallback;

  private void populateMenuWithItems(android.view.Menu);
    descriptor: (Landroid/view/Menu;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
         0: .line 3970
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.string cannot be resolved to a variable\n\tcom.android.internal.R.string cannot be resolved to a variable\n\tcom.android.internal.R.string cannot be resolved to a variable\n\tcom.android.internal.R.string cannot be resolved to a variable\n\tcom.android.internal.R.string cannot be resolved to a variable\n\tcom.android.internal.R.string cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/Editor$TextActionModeCallback;
    MethodParameters:
      Name  Flags
      menu  

  public boolean onPrepareActionMode(android.view.ActionMode, android.view.Menu);
    descriptor: (Landroid/view/ActionMode;Landroid/view/Menu;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.ActionMode mode
        start local 2 // android.view.Menu menu
         0: .line 4020
            aload 0 /* this */
            aload 2 /* menu */
            invokevirtual android.widget.Editor$TextActionModeCallback.updateSelectAllItem:(Landroid/view/Menu;)V
         1: .line 4021
            aload 0 /* this */
            aload 2 /* menu */
            invokevirtual android.widget.Editor$TextActionModeCallback.updateReplaceItem:(Landroid/view/Menu;)V
         2: .line 4022
            aload 0 /* this */
            aload 2 /* menu */
            invokevirtual android.widget.Editor$TextActionModeCallback.updateAssistMenuItems:(Landroid/view/Menu;)V
         3: .line 4024
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.getCustomCallback:()Landroid/view/ActionMode$Callback;
            astore 3 /* customCallback */
        start local 3 // android.view.ActionMode$Callback customCallback
         4: .line 4025
            aload 3 /* customCallback */
            ifnull 6
         5: .line 4026
            aload 3 /* customCallback */
            aload 1 /* mode */
            aload 2 /* menu */
            invokeinterface android.view.ActionMode$Callback.onPrepareActionMode:(Landroid/view/ActionMode;Landroid/view/Menu;)Z
            ireturn
         6: .line 4028
      StackMap locals: android.view.ActionMode$Callback
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // android.view.ActionMode$Callback customCallback
        end local 2 // android.view.Menu menu
        end local 1 // android.view.ActionMode mode
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Landroid/widget/Editor$TextActionModeCallback;
            0    7     1            mode  Landroid/view/ActionMode;
            0    7     2            menu  Landroid/view/Menu;
            4    7     3  customCallback  Landroid/view/ActionMode$Callback;
    MethodParameters:
      Name  Flags
      mode  
      menu  

  private void updateSelectAllItem(android.view.Menu);
    descriptor: (Landroid/view/Menu;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
         0: .line 4036
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.string cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/Editor$TextActionModeCallback;
    MethodParameters:
      Name  Flags
      menu  

  private void updateReplaceItem(android.view.Menu);
    descriptor: (Landroid/view/Menu;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
         0: .line 4048
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.string cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/widget/Editor$TextActionModeCallback;
    MethodParameters:
      Name  Flags
      menu  

  private void updateAssistMenuItems(android.view.Menu);
    descriptor: (Landroid/view/Menu;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.Menu menu
         0: .line 4056
            aload 0 /* this */
            aload 1 /* menu */
            invokevirtual android.widget.Editor$TextActionModeCallback.clearAssistMenuItems:(Landroid/view/Menu;)V
         1: .line 4057
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.shouldEnableAssistMenuItems:()Z
            ifne 3
         2: .line 4058
            return
         3: .line 4061
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            invokevirtual android.widget.Editor.getSelectionActionModeHelper:()Landroid/widget/SelectionActionModeHelper;
            invokevirtual android.widget.SelectionActionModeHelper.getTextClassification:()Landroid/view/textclassifier/TextClassification;
         4: .line 4060
            astore 2 /* textClassification */
        start local 2 // android.view.textclassifier.TextClassification textClassification
         5: .line 4062
            aload 2 /* textClassification */
            ifnonnull 7
         6: .line 4063
            return
         7: .line 4065
      StackMap locals: android.view.textclassifier.TextClassification
      StackMap stack:
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getActions:()Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 14
         8: .line 4067
            aload 0 /* this */
            aload 1 /* menu */
         9: .line 4068
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getActions:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.app.RemoteAction
            getstatic android.widget.TextView.ID_ASSIST:I
        10: .line 4069
            iconst_0
            iconst_2
        11: .line 4067
            invokevirtual android.widget.Editor$TextActionModeCallback.addAssistMenuItem:(Landroid/view/Menu;Landroid/app/RemoteAction;III)Landroid/view/MenuItem;
            astore 3 /* item */
        start local 3 // android.view.MenuItem item
        12: .line 4070
            aload 3 /* item */
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getIntent:()Landroid/content/Intent;
            invokeinterface android.view.MenuItem.setIntent:(Landroid/content/Intent;)Landroid/view/MenuItem;
            pop
        end local 3 // android.view.MenuItem item
        13: .line 4071
            goto 29
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            aload 2 /* textClassification */
            invokevirtual android.widget.Editor$TextActionModeCallback.hasLegacyAssistItem:(Landroid/view/textclassifier/TextClassification;)Z
            ifeq 29
        15: .line 4073
            aload 1 /* menu */
        16: .line 4074
            getstatic android.widget.TextView.ID_ASSIST:I
            getstatic android.widget.TextView.ID_ASSIST:I
            iconst_0
        17: .line 4075
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getLabel:()Ljava/lang/CharSequence;
        18: .line 4073
            invokeinterface android.view.Menu.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem;
        19: .line 4076
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getIcon:()Landroid/graphics/drawable/Drawable;
            invokeinterface android.view.MenuItem.setIcon:(Landroid/graphics/drawable/Drawable;)Landroid/view/MenuItem;
        20: .line 4077
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getIntent:()Landroid/content/Intent;
            invokeinterface android.view.MenuItem.setIntent:(Landroid/content/Intent;)Landroid/view/MenuItem;
        21: .line 4073
            astore 3 /* item */
        start local 3 // android.view.MenuItem item
        22: .line 4078
            aload 3 /* item */
            iconst_2
            invokeinterface android.view.MenuItem.setShowAsAction:(I)V
        23: .line 4079
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mAssistClickHandlers:Ljava/util/Map;
            aload 3 /* item */
        24: .line 4080
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getContext:()Landroid/content/Context;
        25: .line 4081
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getIntent:()Landroid/content/Intent;
        26: .line 4082
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.createAssistMenuItemPendingIntentRequestCode:()I
        27: .line 4080
            invokestatic android.view.textclassifier.TextClassification.createPendingIntent:(Landroid/content/Context;Landroid/content/Intent;I)Landroid/app/PendingIntent;
        28: .line 4079
            invokestatic android.view.textclassifier.TextClassification.createIntentOnClickListener:(Landroid/app/PendingIntent;)Landroid/view/View$OnClickListener;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // android.view.MenuItem item
        29: .line 4084
      StackMap locals:
      StackMap stack:
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getActions:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 3 /* count */
        start local 3 // int count
        30: .line 4085
            iconst_1
            istore 4 /* i */
        start local 4 // int i
        31: goto 37
        32: .line 4087
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* menu */
            aload 2 /* textClassification */
            invokevirtual android.view.textclassifier.TextClassification.getActions:()Ljava/util/List;
            iload 4 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast android.app.RemoteAction
            iconst_0
        33: .line 4088
            bipush 50
            iload 4 /* i */
            iadd
            iconst_1
            isub
        34: .line 4089
            iconst_0
        35: .line 4087
            invokevirtual android.widget.Editor$TextActionModeCallback.addAssistMenuItem:(Landroid/view/Menu;Landroid/app/RemoteAction;III)Landroid/view/MenuItem;
            pop
        36: .line 4085
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 4 /* i */
            iload 3 /* count */
            if_icmplt 32
        end local 4 // int i
        38: .line 4091
            return
        end local 3 // int count
        end local 2 // android.view.textclassifier.TextClassification textClassification
        end local 1 // android.view.Menu menu
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   39     0                this  Landroid/widget/Editor$TextActionModeCallback;
            0   39     1                menu  Landroid/view/Menu;
            5   39     2  textClassification  Landroid/view/textclassifier/TextClassification;
           12   13     3                item  Landroid/view/MenuItem;
           22   29     3                item  Landroid/view/MenuItem;
           30   39     3               count  I
           31   38     4                   i  I
    MethodParameters:
      Name  Flags
      menu  

  private android.view.MenuItem addAssistMenuItem(android.view.Menu, android.app.RemoteAction, int, int, int);
    descriptor: (Landroid/view/Menu;Landroid/app/RemoteAction;III)Landroid/view/MenuItem;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.Menu menu
        start local 2 // android.app.RemoteAction action
        start local 3 // int intemId
        start local 4 // int order
        start local 5 // int showAsAction
         0: .line 4095
            aload 1 /* menu */
            getstatic android.widget.TextView.ID_ASSIST:I
            iload 3 /* intemId */
            iload 4 /* order */
            aload 2 /* action */
            invokevirtual android.app.RemoteAction.getTitle:()Ljava/lang/CharSequence;
            invokeinterface android.view.Menu.add:(IIILjava/lang/CharSequence;)Landroid/view/MenuItem;
         1: .line 4096
            aload 2 /* action */
            invokevirtual android.app.RemoteAction.getContentDescription:()Ljava/lang/CharSequence;
            invokeinterface android.view.MenuItem.setContentDescription:(Ljava/lang/CharSequence;)Landroid/view/MenuItem;
         2: .line 4095
            astore 6 /* item */
        start local 6 // android.view.MenuItem item
         3: .line 4097
            aload 2 /* action */
            invokevirtual android.app.RemoteAction.shouldShowIcon:()Z
            ifeq 5
         4: .line 4098
            aload 6 /* item */
            aload 2 /* action */
            invokevirtual android.app.RemoteAction.getIcon:()Landroid/graphics/drawable/Icon;
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getContext:()Landroid/content/Context;
            invokevirtual android.graphics.drawable.Icon.loadDrawable:(Landroid/content/Context;)Landroid/graphics/drawable/Drawable;
            invokeinterface android.view.MenuItem.setIcon:(Landroid/graphics/drawable/Drawable;)Landroid/view/MenuItem;
            pop
         5: .line 4100
      StackMap locals: android.view.MenuItem
      StackMap stack:
            aload 6 /* item */
            iload 5 /* showAsAction */
            invokeinterface android.view.MenuItem.setShowAsAction:(I)V
         6: .line 4101
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mAssistClickHandlers:Ljava/util/Map;
            aload 6 /* item */
         7: .line 4102
            aload 2 /* action */
            invokevirtual android.app.RemoteAction.getActionIntent:()Landroid/app/PendingIntent;
            invokestatic android.view.textclassifier.TextClassification.createIntentOnClickListener:(Landroid/app/PendingIntent;)Landroid/view/View$OnClickListener;
         8: .line 4101
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 4103
            aload 6 /* item */
            areturn
        end local 6 // android.view.MenuItem item
        end local 5 // int showAsAction
        end local 4 // int order
        end local 3 // int intemId
        end local 2 // android.app.RemoteAction action
        end local 1 // android.view.Menu menu
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Landroid/widget/Editor$TextActionModeCallback;
            0   10     1          menu  Landroid/view/Menu;
            0   10     2        action  Landroid/app/RemoteAction;
            0   10     3       intemId  I
            0   10     4         order  I
            0   10     5  showAsAction  I
            3   10     6          item  Landroid/view/MenuItem;
    MethodParameters:
              Name  Flags
      menu          
      action        
      intemId       
      order         
      showAsAction  

  private void clearAssistMenuItems(android.view.Menu);
    descriptor: (Landroid/view/Menu;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.Menu menu
         0: .line 4107
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: .line 4108
            goto 7
         2: .line 4109
      StackMap locals: int
      StackMap stack:
            aload 1 /* menu */
            iload 2 /* i */
            invokeinterface android.view.Menu.getItem:(I)Landroid/view/MenuItem;
            astore 3 /* menuItem */
        start local 3 // android.view.MenuItem menuItem
         3: .line 4110
            aload 3 /* menuItem */
            invokeinterface android.view.MenuItem.getGroupId:()I
            getstatic android.widget.TextView.ID_ASSIST:I
            if_icmpne 6
         4: .line 4111
            aload 1 /* menu */
            aload 3 /* menuItem */
            invokeinterface android.view.MenuItem.getItemId:()I
            invokeinterface android.view.Menu.removeItem:(I)V
         5: .line 4112
            goto 7
         6: .line 4114
      StackMap locals: android.view.MenuItem
      StackMap stack:
            iinc 2 /* i */ 1
        end local 3 // android.view.MenuItem menuItem
         7: .line 4108
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            aload 1 /* menu */
            invokeinterface android.view.Menu.size:()I
            if_icmplt 2
         8: .line 4116
            return
        end local 2 // int i
        end local 1 // android.view.Menu menu
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Landroid/widget/Editor$TextActionModeCallback;
            0    9     1      menu  Landroid/view/Menu;
            1    9     2         i  I
            3    7     3  menuItem  Landroid/view/MenuItem;
    MethodParameters:
      Name  Flags
      menu  

  private boolean hasLegacyAssistItem(android.view.textclassifier.TextClassification);
    descriptor: (Landroid/view/textclassifier/TextClassification;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.textclassifier.TextClassification classification
         0: .line 4120
            aload 1 /* classification */
            invokevirtual android.view.textclassifier.TextClassification.getIcon:()Landroid/graphics/drawable/Drawable;
            ifnonnull 4
         1: .line 4121
            aload 1 /* classification */
            invokevirtual android.view.textclassifier.TextClassification.getLabel:()Ljava/lang/CharSequence;
         2: .line 4120
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
         3: .line 4121
            ifne 7
      StackMap locals:
      StackMap stack:
         4: aload 1 /* classification */
            invokevirtual android.view.textclassifier.TextClassification.getIntent:()Landroid/content/Intent;
            ifnonnull 6
         5: .line 4122
            aload 1 /* classification */
            invokevirtual android.view.textclassifier.TextClassification.getOnClickListener:()Landroid/view/View$OnClickListener;
            ifnull 7
         6: .line 4120
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 1 // android.view.textclassifier.TextClassification classification
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Landroid/widget/Editor$TextActionModeCallback;
            0    8     1  classification  Landroid/view/textclassifier/TextClassification;
    MethodParameters:
                Name  Flags
      classification  

  private boolean onAssistMenuItemClicked(android.view.MenuItem);
    descriptor: (Landroid/view/MenuItem;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.MenuItem assistMenuItem
         0: .line 4126
            aload 1 /* assistMenuItem */
            invokeinterface android.view.MenuItem.getGroupId:()I
            getstatic android.widget.TextView.ID_ASSIST:I
            if_icmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic com.android.internal.util.Preconditions.checkArgument:(Z)V
         3: .line 4129
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            invokevirtual android.widget.Editor.getSelectionActionModeHelper:()Landroid/widget/SelectionActionModeHelper;
            invokevirtual android.widget.SelectionActionModeHelper.getTextClassification:()Landroid/view/textclassifier/TextClassification;
         4: .line 4128
            astore 2 /* textClassification */
        start local 2 // android.view.textclassifier.TextClassification textClassification
         5: .line 4130
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.shouldEnableAssistMenuItems:()Z
            ifeq 6
            aload 2 /* textClassification */
            ifnonnull 7
         6: .line 4132
      StackMap locals: android.view.textclassifier.TextClassification
      StackMap stack:
            iconst_1
            ireturn
         7: .line 4135
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mAssistClickHandlers:Ljava/util/Map;
            aload 1 /* assistMenuItem */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast android.view.View$OnClickListener
            astore 3 /* onClickListener */
        start local 3 // android.view.View$OnClickListener onClickListener
         8: .line 4136
            aload 3 /* onClickListener */
            ifnonnull 15
         9: .line 4137
            aload 1 /* assistMenuItem */
            invokeinterface android.view.MenuItem.getIntent:()Landroid/content/Intent;
            astore 4 /* intent */
        start local 4 // android.content.Intent intent
        10: .line 4138
            aload 4 /* intent */
            ifnull 15
        11: .line 4141
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getContext:()Landroid/content/Context;
            aload 4 /* intent */
        12: .line 4142
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.createAssistMenuItemPendingIntentRequestCode:()I
        13: .line 4140
            invokestatic android.view.textclassifier.TextClassification.createPendingIntent:(Landroid/content/Context;Landroid/content/Intent;I)Landroid/app/PendingIntent;
        14: .line 4139
            invokestatic android.view.textclassifier.TextClassification.createIntentOnClickListener:(Landroid/app/PendingIntent;)Landroid/view/View$OnClickListener;
            astore 3 /* onClickListener */
        end local 4 // android.content.Intent intent
        15: .line 4145
      StackMap locals: android.view.View$OnClickListener
      StackMap stack:
            aload 3 /* onClickListener */
            ifnull 18
        16: .line 4146
            aload 3 /* onClickListener */
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokeinterface android.view.View$OnClickListener.onClick:(Landroid/view/View;)V
        17: .line 4147
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            invokevirtual android.widget.Editor.stopTextActionMode:()V
        18: .line 4150
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // android.view.View$OnClickListener onClickListener
        end local 2 // android.view.textclassifier.TextClassification textClassification
        end local 1 // android.view.MenuItem assistMenuItem
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   19     0                this  Landroid/widget/Editor$TextActionModeCallback;
            0   19     1      assistMenuItem  Landroid/view/MenuItem;
            5   19     2  textClassification  Landroid/view/textclassifier/TextClassification;
            8   19     3     onClickListener  Landroid/view/View$OnClickListener;
           10   15     4              intent  Landroid/content/Intent;
    MethodParameters:
                Name  Flags
      assistMenuItem  

  private int createAssistMenuItemPendingIntentRequestCode();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.widget.Editor$TextActionModeCallback this
         0: .line 4154
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.hasSelection:()Z
            ifeq 5
         1: .line 4155
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getText:()Ljava/lang/CharSequence;
         2: .line 4156
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionStart:()I
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionEnd:()I
         3: .line 4155
            invokeinterface java.lang.CharSequence.subSequence:(II)Ljava/lang/CharSequence;
         4: .line 4157
            invokevirtual java.lang.Object.hashCode:()I
            goto 6
         5: .line 4158
      StackMap locals:
      StackMap stack:
            iconst_0
         6: .line 4154
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Landroid/widget/Editor$TextActionModeCallback;

  private boolean shouldEnableAssistMenuItems();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.widget.Editor$TextActionModeCallback this
         0: .line 4162
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.isDeviceProvisioned:()Z
            ifeq 4
         1: .line 4163
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getContext:()Landroid/content/Context;
            invokestatic android.view.textclassifier.TextClassificationManager.getSettings:(Landroid/content/Context;)Landroid/view/textclassifier/TextClassificationConstants;
         2: .line 4164
            invokevirtual android.view.textclassifier.TextClassificationConstants.isSmartTextShareEnabled:()Z
            ifeq 4
         3: .line 4162
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Landroid/widget/Editor$TextActionModeCallback;

  public boolean onActionItemClicked(android.view.ActionMode, android.view.MenuItem);
    descriptor: (Landroid/view/ActionMode;Landroid/view/MenuItem;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.ActionMode mode
        start local 2 // android.view.MenuItem item
         0: .line 4169
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            invokevirtual android.widget.Editor.getSelectionActionModeHelper:()Landroid/widget/SelectionActionModeHelper;
            aload 2 /* item */
            invokeinterface android.view.MenuItem.getItemId:()I
            invokevirtual android.widget.SelectionActionModeHelper.onSelectionAction:(I)V
         1: .line 4171
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mProcessTextIntentActionsHandler:Landroid/widget/Editor$ProcessTextIntentActionsHandler;
            aload 2 /* item */
            invokevirtual android.widget.Editor$ProcessTextIntentActionsHandler.performMenuItemAction:(Landroid/view/MenuItem;)Z
            ifeq 3
         2: .line 4172
            iconst_1
            ireturn
         3: .line 4174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.getCustomCallback:()Landroid/view/ActionMode$Callback;
            astore 3 /* customCallback */
        start local 3 // android.view.ActionMode$Callback customCallback
         4: .line 4175
            aload 3 /* customCallback */
            ifnull 6
            aload 3 /* customCallback */
            aload 1 /* mode */
            aload 2 /* item */
            invokeinterface android.view.ActionMode$Callback.onActionItemClicked:(Landroid/view/ActionMode;Landroid/view/MenuItem;)Z
            ifeq 6
         5: .line 4176
            iconst_1
            ireturn
         6: .line 4178
      StackMap locals: android.view.ActionMode$Callback
      StackMap stack:
            aload 2 /* item */
            invokeinterface android.view.MenuItem.getGroupId:()I
            getstatic android.widget.TextView.ID_ASSIST:I
            if_icmpne 8
            aload 0 /* this */
            aload 2 /* item */
            invokevirtual android.widget.Editor$TextActionModeCallback.onAssistMenuItemClicked:(Landroid/view/MenuItem;)Z
            ifeq 8
         7: .line 4179
            iconst_1
            ireturn
         8: .line 4181
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            aload 2 /* item */
            invokeinterface android.view.MenuItem.getItemId:()I
            invokevirtual android.widget.TextView.onTextContextMenuItem:(I)Z
            ireturn
        end local 3 // android.view.ActionMode$Callback customCallback
        end local 2 // android.view.MenuItem item
        end local 1 // android.view.ActionMode mode
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            this  Landroid/widget/Editor$TextActionModeCallback;
            0    9     1            mode  Landroid/view/ActionMode;
            0    9     2            item  Landroid/view/MenuItem;
            4    9     3  customCallback  Landroid/view/ActionMode$Callback;
    MethodParameters:
      Name  Flags
      mode  
      item  

  public void onDestroyActionMode(android.view.ActionMode);
    descriptor: (Landroid/view/ActionMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.ActionMode mode
         0: .line 4187
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            invokevirtual android.widget.Editor.getSelectionActionModeHelper:()Landroid/widget/SelectionActionModeHelper;
            invokevirtual android.widget.SelectionActionModeHelper.onDestroyActionMode:()V
         1: .line 4188
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            aconst_null
            putfield android.widget.Editor.mTextActionMode:Landroid/view/ActionMode;
         2: .line 4189
            aload 0 /* this */
            invokevirtual android.widget.Editor$TextActionModeCallback.getCustomCallback:()Landroid/view/ActionMode$Callback;
            astore 2 /* customCallback */
        start local 2 // android.view.ActionMode$Callback customCallback
         3: .line 4190
            aload 2 /* customCallback */
            ifnull 5
         4: .line 4191
            aload 2 /* customCallback */
            aload 1 /* mode */
            invokeinterface android.view.ActionMode$Callback.onDestroyActionMode:(Landroid/view/ActionMode;)V
         5: .line 4194
      StackMap locals: android.view.ActionMode$Callback
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mPreserveSelection:Z
            ifne 9
         6: .line 4200
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getText:()Ljava/lang/CharSequence;
            checkcast android.text.Spannable
         7: .line 4201
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionEnd:()I
         8: .line 4200
            invokestatic android.text.Selection.setSelection:(Landroid/text/Spannable;I)V
         9: .line 4204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mSelectionModifierCursorController:Landroid/widget/Editor$SelectionModifierCursorController;
            ifnull 11
        10: .line 4205
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mSelectionModifierCursorController:Landroid/widget/Editor$SelectionModifierCursorController;
            invokevirtual android.widget.Editor$SelectionModifierCursorController.hide:()V
        11: .line 4208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mAssistClickHandlers:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
        12: .line 4209
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            iconst_0
            putfield android.widget.Editor.mRequestingLinkActionMode:Z
        13: .line 4210
            return
        end local 2 // android.view.ActionMode$Callback customCallback
        end local 1 // android.view.ActionMode mode
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Landroid/widget/Editor$TextActionModeCallback;
            0   14     1            mode  Landroid/view/ActionMode;
            3   14     2  customCallback  Landroid/view/ActionMode$Callback;
    MethodParameters:
      Name  Flags
      mode  

  public void onGetContentRect(android.view.ActionMode, android.view.View, android.graphics.Rect);
    descriptor: (Landroid/view/ActionMode;Landroid/view/View;Landroid/graphics/Rect;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // android.widget.Editor$TextActionModeCallback this
        start local 1 // android.view.ActionMode mode
        start local 2 // android.view.View view
        start local 3 // android.graphics.Rect outRect
         0: .line 4214
            aload 2 /* view */
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 1
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getLayout:()Landroid/text/Layout;
            ifnonnull 3
         1: .line 4215
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* mode */
            aload 2 /* view */
            aload 3 /* outRect */
            invokespecial android.view.ActionMode$Callback2.onGetContentRect:(Landroid/view/ActionMode;Landroid/view/View;Landroid/graphics/Rect;)V
         2: .line 4216
            return
         3: .line 4218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionStart:()I
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionEnd:()I
            if_icmpeq 11
         4: .line 4220
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionPath:Landroid/graphics/Path;
            invokevirtual android.graphics.Path.reset:()V
         5: .line 4221
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getLayout:()Landroid/text/Layout;
         6: .line 4222
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionStart:()I
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionEnd:()I
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionPath:Landroid/graphics/Path;
         7: .line 4221
            invokevirtual android.text.Layout.getSelectionPath:(IILandroid/graphics/Path;)V
         8: .line 4223
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionPath:Landroid/graphics/Path;
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
            iconst_1
            invokevirtual android.graphics.Path.computeBounds:(Landroid/graphics/RectF;Z)V
         9: .line 4224
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
            dup
            getfield android.graphics.RectF.bottom:F
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mHandleHeight:I
            i2f
            fadd
            putfield android.graphics.RectF.bottom:F
        10: .line 4225
            goto 22
        11: .line 4227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getLayout:()Landroid/text/Layout;
            astore 4 /* layout */
        start local 4 // android.text.Layout layout
        12: .line 4228
            aload 4 /* layout */
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionStart:()I
            invokevirtual android.text.Layout.getLineForOffset:(I)I
            istore 5 /* line */
        start local 5 // int line
        13: .line 4229
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            aconst_null
        14: .line 4230
            aload 4 /* layout */
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.getSelectionStart:()I
            invokevirtual android.text.Layout.getPrimaryHorizontal:(I)F
        15: .line 4229
            invokevirtual android.widget.Editor.clampHorizontalPosition:(Landroid/graphics/drawable/Drawable;F)I
            i2f
            fstore 6 /* primaryHorizontal */
        start local 6 // float primaryHorizontal
        16: .line 4231
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
        17: .line 4232
            fload 6 /* primaryHorizontal */
        18: .line 4233
            aload 4 /* layout */
            iload 5 /* line */
            invokevirtual android.text.Layout.getLineTop:(I)I
            i2f
        19: .line 4234
            fload 6 /* primaryHorizontal */
        20: .line 4235
            aload 4 /* layout */
            iload 5 /* line */
            invokevirtual android.text.Layout.getLineBottom:(I)I
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mHandleHeight:I
            iadd
            i2f
        21: .line 4231
            invokevirtual android.graphics.RectF.set:(FFFF)V
        end local 6 // float primaryHorizontal
        end local 5 // int line
        end local 4 // android.text.Layout layout
        22: .line 4238
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.viewportToContentHorizontalOffset:()I
            istore 4 /* textHorizontalOffset */
        start local 4 // int textHorizontalOffset
        23: .line 4239
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.this$0:Landroid/widget/Editor;
            getfield android.widget.Editor.mTextView:Landroid/widget/TextView;
            invokevirtual android.widget.TextView.viewportToContentVerticalOffset:()I
            istore 5 /* textVerticalOffset */
        start local 5 // int textVerticalOffset
        24: .line 4240
            aload 3 /* outRect */
        25: .line 4241
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
            getfield android.graphics.RectF.left:F
            iload 4 /* textHorizontalOffset */
            i2f
            fadd
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
        26: .line 4242
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
            getfield android.graphics.RectF.top:F
            iload 5 /* textVerticalOffset */
            i2f
            fadd
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
        27: .line 4243
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
            getfield android.graphics.RectF.right:F
            iload 4 /* textHorizontalOffset */
            i2f
            fadd
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        28: .line 4244
            aload 0 /* this */
            getfield android.widget.Editor$TextActionModeCallback.mSelectionBounds:Landroid/graphics/RectF;
            getfield android.graphics.RectF.bottom:F
            iload 5 /* textVerticalOffset */
            i2f
            fadd
            f2d
            invokestatic java.lang.Math.ceil:(D)D
            d2i
        29: .line 4240
            invokevirtual android.graphics.Rect.set:(IIII)V
        30: .line 4245
            return
        end local 5 // int textVerticalOffset
        end local 4 // int textHorizontalOffset
        end local 3 // android.graphics.Rect outRect
        end local 2 // android.view.View view
        end local 1 // android.view.ActionMode mode
        end local 0 // android.widget.Editor$TextActionModeCallback this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   31     0                  this  Landroid/widget/Editor$TextActionModeCallback;
            0   31     1                  mode  Landroid/view/ActionMode;
            0   31     2                  view  Landroid/view/View;
            0   31     3               outRect  Landroid/graphics/Rect;
           12   22     4                layout  Landroid/text/Layout;
           13   22     5                  line  I
           16   22     6     primaryHorizontal  F
           23   31     4  textHorizontalOffset  I
           24   31     5    textVerticalOffset  I
    MethodParameters:
         Name  Flags
      mode     
      view     
      outRect  
}
SourceFile: "Editor.java"
NestHost: android.widget.Editor
InnerClasses:
  public abstract Callback = android.view.ActionMode$Callback of android.view.ActionMode
  public abstract Callback2 = android.view.ActionMode$Callback2 of android.view.ActionMode
  public abstract OnClickListener = android.view.View$OnClickListener of android.view.View
  private InsertionHandleView = android.widget.Editor$InsertionHandleView of android.widget.Editor
  private InsertionPointCursorController = android.widget.Editor$InsertionPointCursorController of android.widget.Editor
  final ProcessTextIntentActionsHandler = android.widget.Editor$ProcessTextIntentActionsHandler of android.widget.Editor
  SelectionModifierCursorController = android.widget.Editor$SelectionModifierCursorController of android.widget.Editor
  abstract TextActionMode = android.widget.Editor$TextActionMode of android.widget.Editor
  private TextActionModeCallback = android.widget.Editor$TextActionModeCallback of android.widget.Editor