public class android.inputmethodservice.InputMethodService extends android.inputmethodservice.AbstractInputMethodService
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.inputmethodservice.InputMethodService
  super_class: android.inputmethodservice.AbstractInputMethodService
{
  static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "InputMethodService"

  static final boolean DEBUG;
    descriptor: Z
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int BACK_DISPOSITION_DEFAULT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int BACK_DISPOSITION_WILL_NOT_DISMISS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final int BACK_DISPOSITION_WILL_DISMISS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final int BACK_DISPOSITION_ADJUST_NOTHING;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int IME_ACTIVE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int IME_VISIBLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int BACK_DISPOSITION_MIN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int BACK_DISPOSITION_MAX;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  android.view.inputmethod.InputMethodManager mImm;
    descriptor: Landroid/view/inputmethod/InputMethodManager;
    flags: (0x0000) 

  int mTheme;
    descriptor: I
    flags: (0x0000) 

  android.view.LayoutInflater mInflater;
    descriptor: Landroid/view/LayoutInflater;
    flags: (0x0000) 

  android.content.res.TypedArray mThemeAttrs;
    descriptor: Landroid/content/res/TypedArray;
    flags: (0x0000) 

  android.view.View mRootView;
    descriptor: Landroid/view/View;
    flags: (0x0000) 

  android.inputmethodservice.SoftInputWindow mWindow;
    descriptor: Landroid/inputmethodservice/SoftInputWindow;
    flags: (0x0000) 

  boolean mInitialized;
    descriptor: Z
    flags: (0x0000) 

  boolean mWindowCreated;
    descriptor: Z
    flags: (0x0000) 

  boolean mWindowAdded;
    descriptor: Z
    flags: (0x0000) 

  boolean mWindowVisible;
    descriptor: Z
    flags: (0x0000) 

  boolean mWindowWasVisible;
    descriptor: Z
    flags: (0x0000) 

  boolean mInShowWindow;
    descriptor: Z
    flags: (0x0000) 

  android.view.ViewGroup mFullscreenArea;
    descriptor: Landroid/view/ViewGroup;
    flags: (0x0000) 

  android.widget.FrameLayout mExtractFrame;
    descriptor: Landroid/widget/FrameLayout;
    flags: (0x0000) 

  android.widget.FrameLayout mCandidatesFrame;
    descriptor: Landroid/widget/FrameLayout;
    flags: (0x0000) 

  android.widget.FrameLayout mInputFrame;
    descriptor: Landroid/widget/FrameLayout;
    flags: (0x0000) 

  android.os.IBinder mToken;
    descriptor: Landroid/os/IBinder;
    flags: (0x0000) 

  android.view.inputmethod.InputBinding mInputBinding;
    descriptor: Landroid/view/inputmethod/InputBinding;
    flags: (0x0000) 

  android.view.inputmethod.InputConnection mInputConnection;
    descriptor: Landroid/view/inputmethod/InputConnection;
    flags: (0x0000) 

  boolean mInputStarted;
    descriptor: Z
    flags: (0x0000) 

  boolean mInputViewStarted;
    descriptor: Z
    flags: (0x0000) 

  boolean mCandidatesViewStarted;
    descriptor: Z
    flags: (0x0000) 

  android.view.inputmethod.InputConnection mStartedInputConnection;
    descriptor: Landroid/view/inputmethod/InputConnection;
    flags: (0x0000) 

  android.view.inputmethod.EditorInfo mInputEditorInfo;
    descriptor: Landroid/view/inputmethod/EditorInfo;
    flags: (0x0000) 

  private android.os.IBinder mStartInputToken;
    descriptor: Landroid/os/IBinder;
    flags: (0x0002) ACC_PRIVATE

  int mShowInputFlags;
    descriptor: I
    flags: (0x0000) 

  boolean mShowInputRequested;
    descriptor: Z
    flags: (0x0000) 

  boolean mLastShowInputRequested;
    descriptor: Z
    flags: (0x0000) 

  int mCandidatesVisibility;
    descriptor: I
    flags: (0x0000) 

  android.view.inputmethod.CompletionInfo[] mCurCompletions;
    descriptor: [Landroid/view/inputmethod/CompletionInfo;
    flags: (0x0000) 

  boolean mFullscreenApplied;
    descriptor: Z
    flags: (0x0000) 

  boolean mIsFullscreen;
    descriptor: Z
    flags: (0x0000) 

  android.view.View mExtractView;
    descriptor: Landroid/view/View;
    flags: (0x0000) 

  boolean mExtractViewHidden;
    descriptor: Z
    flags: (0x0000) 

  android.inputmethodservice.ExtractEditText mExtractEditText;
    descriptor: Landroid/inputmethodservice/ExtractEditText;
    flags: (0x0000) 

  android.view.ViewGroup mExtractAccessories;
    descriptor: Landroid/view/ViewGroup;
    flags: (0x0000) 

  android.view.View mExtractAction;
    descriptor: Landroid/view/View;
    flags: (0x0000) 

  android.view.inputmethod.ExtractedText mExtractedText;
    descriptor: Landroid/view/inputmethod/ExtractedText;
    flags: (0x0000) 

  int mExtractedToken;
    descriptor: I
    flags: (0x0000) 

  android.view.View mInputView;
    descriptor: Landroid/view/View;
    flags: (0x0000) 

  boolean mIsInputViewShown;
    descriptor: Z
    flags: (0x0000) 

  int mStatusIcon;
    descriptor: I
    flags: (0x0000) 

  int mBackDisposition;
    descriptor: I
    flags: (0x0000) 

  boolean mShouldClearInsetOfPreviousIme;
    descriptor: Z
    flags: (0x0000) 

  final android.inputmethodservice.InputMethodService$Insets mTmpInsets;
    descriptor: Landroid/inputmethodservice/InputMethodService$Insets;
    flags: (0x0010) ACC_FINAL

  final int[] mTmpLocation;
    descriptor: [I
    flags: (0x0010) ACC_FINAL

  final android.view.ViewTreeObserver$OnComputeInternalInsetsListener mInsetsComputer;
    descriptor: Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;
    flags: (0x0010) ACC_FINAL

  final android.view.View$OnClickListener mActionClickListener;
    descriptor: Landroid/view/View$OnClickListener;
    flags: (0x0010) ACC_FINAL

  private android.inputmethodservice.InputMethodService$SettingsObserver mSettingsObserver;
    descriptor: Landroid/inputmethodservice/InputMethodService$SettingsObserver;
    flags: (0x0002) ACC_PRIVATE

  static final int MOVEMENT_DOWN;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  static final int MOVEMENT_UP;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -2

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 239
            aload 0 /* this */
            invokespecial android.inputmethodservice.AbstractInputMethodService.<init>:()V
         1: .line 346
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mTheme:I
         2: .line 418
            aload 0 /* this */
            new android.inputmethodservice.InputMethodService$Insets
            dup
            invokespecial android.inputmethodservice.InputMethodService$Insets.<init>:()V
            putfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
         3: .line 419
            aload 0 /* this */
            iconst_2
            newarray 10
            putfield android.inputmethodservice.InputMethodService.mTmpLocation:[I
         4: .line 421
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onComputeInternalInsets(Landroid/inputmethodservice/InputMethodService;)Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Landroid/view/ViewTreeObserver$InternalInsetsInfo;)V
                  android/inputmethodservice/InputMethodService.lambda$0(Landroid/view/ViewTreeObserver$InternalInsetsInfo;)V (7)
                  (Landroid/view/ViewTreeObserver$InternalInsetsInfo;)V
            putfield android.inputmethodservice.InputMethodService.mInsetsComputer:Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;
         5: .line 438
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic onClick(Landroid/inputmethodservice/InputMethodService;)Landroid/view/View$OnClickListener;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Landroid/view/View;)V
                  android/inputmethodservice/InputMethodService.lambda$1(Landroid/view/View;)V (7)
                  (Landroid/view/View;)V
            putfield android.inputmethodservice.InputMethodService.mActionClickListener:Landroid/view/View$OnClickListener;
         6: .line 239
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Landroid/inputmethodservice/InputMethodService;

  public void setTheme(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int theme
         0: .line 878
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            ifnull 2
         1: .line 879
            new java.lang.IllegalStateException
            dup
            ldc "Must be called before onCreate()"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 881
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* theme */
            putfield android.inputmethodservice.InputMethodService.mTheme:I
         3: .line 882
            return
        end local 1 // int theme
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Landroid/inputmethodservice/InputMethodService;
            0    4     1  theme  I
    MethodParameters:
       Name  Flags
      theme  

  public boolean enableHardwareAcceleration();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 902
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            ifnull 2
         1: .line 903
            new java.lang.IllegalStateException
            dup
            ldc "Must be called before onCreate()"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 905
      StackMap locals:
      StackMap stack:
            invokestatic android.app.ActivityManager.isHighEndGfx:()Z
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/inputmethodservice/InputMethodService;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public void onCreate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 911
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tandroid.R.style cannot be resolved to a variable\n\tandroid.R.style cannot be resolved to a variable\n\tandroid.R.style cannot be resolved to a variable\n\tandroid.R.style cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onInitializeInterface();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 943
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  void initialize();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 946
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInitialized:Z
            ifne 3
         1: .line 947
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mInitialized:Z
         2: .line 948
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onInitializeInterface:()V
         3: .line 950
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/inputmethodservice/InputMethodService;

  void initViews();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 958
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tandroid.R.styleable cannot be resolved to a type\n\tcom.android.internal.R.layout cannot be resolved to a variable\n\tcom.android.internal.R.style cannot be resolved to a variable\n\tcom.android.internal.R.id cannot be resolved to a variable\n\tandroid.R.id cannot be resolved to a variable\n\tandroid.R.id cannot be resolved to a variable\n\tandroid.R.id cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onDestroy();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 990
            aload 0 /* this */
            invokespecial android.inputmethodservice.AbstractInputMethodService.onDestroy:()V
         1: .line 991
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mRootView:Landroid/view/View;
            invokevirtual android.view.View.getViewTreeObserver:()Landroid/view/ViewTreeObserver;
         2: .line 992
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInsetsComputer:Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;
         3: .line 991
            invokevirtual android.view.ViewTreeObserver.removeOnComputeInternalInsetsListener:(Landroid/view/ViewTreeObserver$OnComputeInternalInsetsListener;)V
         4: .line 993
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.doFinishInput:()V
         5: .line 994
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowAdded:Z
            ifeq 8
         6: .line 998
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            invokevirtual android.inputmethodservice.SoftInputWindow.getWindow:()Landroid/view/Window;
            iconst_0
            invokevirtual android.view.Window.setWindowAnimations:(I)V
         7: .line 999
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            invokevirtual android.inputmethodservice.SoftInputWindow.dismiss:()V
         8: .line 1001
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
            ifnull 11
         9: .line 1002
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
            invokevirtual android.inputmethodservice.InputMethodService$SettingsObserver.unregister:()V
        10: .line 1003
            aload 0 /* this */
            aconst_null
            putfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
        11: .line 1005
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onConfigurationChanged(android.content.res.Configuration);
    descriptor: (Landroid/content/res/Configuration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.content.res.Configuration newConfig
         0: .line 1024
            aload 0 /* this */
            aload 1 /* newConfig */
            invokespecial android.inputmethodservice.AbstractInputMethodService.onConfigurationChanged:(Landroid/content/res/Configuration;)V
         1: .line 1025
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.resetStateForNewConfiguration:()V
         2: .line 1026
            return
        end local 1 // android.content.res.Configuration newConfig
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Landroid/inputmethodservice/InputMethodService;
            0    3     1  newConfig  Landroid/content/res/Configuration;
    MethodParameters:
           Name  Flags
      newConfig  

  private void resetStateForNewConfiguration();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1029
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            istore 1 /* visible */
        start local 1 // boolean visible
         1: .line 1030
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputFlags:I
            istore 2 /* showFlags */
        start local 2 // int showFlags
         2: .line 1031
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            istore 3 /* showingInput */
        start local 3 // boolean showingInput
         3: .line 1032
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCurCompletions:[Landroid/view/inputmethod/CompletionInfo;
            astore 4 /* completions */
        start local 4 // android.view.inputmethod.CompletionInfo[] completions
         4: .line 1033
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.initViews:()V
         5: .line 1034
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
         6: .line 1035
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
         7: .line 1036
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputStarted:Z
            ifeq 11
         8: .line 1037
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
         9: .line 1038
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputEditorInfo:()Landroid/view/inputmethod/EditorInfo;
            iconst_1
        10: .line 1037
            invokevirtual android.inputmethodservice.InputMethodService.doStartInput:(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;Z)V
        11: .line 1040
      StackMap locals: android.inputmethodservice.InputMethodService int int int android.view.inputmethod.CompletionInfo[]
      StackMap stack:
            iload 1 /* visible */
            ifeq 31
        12: .line 1041
            iload 3 /* showingInput */
            ifeq 21
        13: .line 1043
            aload 0 /* this */
            iload 2 /* showFlags */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.dispatchOnShowInputRequested:(IZ)Z
            ifeq 19
        14: .line 1044
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.showWindow:(Z)V
        15: .line 1045
            aload 4 /* completions */
            ifnull 25
        16: .line 1046
            aload 0 /* this */
            aload 4 /* completions */
            putfield android.inputmethodservice.InputMethodService.mCurCompletions:[Landroid/view/inputmethod/CompletionInfo;
        17: .line 1047
            aload 0 /* this */
            aload 4 /* completions */
            invokevirtual android.inputmethodservice.InputMethodService.onDisplayCompletions:([Landroid/view/inputmethod/CompletionInfo;)V
        18: .line 1049
            goto 25
        19: .line 1050
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.doHideWindow:()V
        20: .line 1052
            goto 25
      StackMap locals:
      StackMap stack:
        21: aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesVisibility:I
            ifne 24
        22: .line 1055
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.showWindow:(Z)V
        23: .line 1056
            goto 25
        24: .line 1058
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.doHideWindow:()V
        25: .line 1061
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onEvaluateInputViewShown:()Z
            istore 5 /* showing */
        start local 5 // boolean showing
        26: .line 1062
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartInputToken:Landroid/os/IBinder;
        27: .line 1063
            iconst_1
            iload 5 /* showing */
            ifeq 28
            iconst_2
            goto 29
      StackMap locals: android.inputmethodservice.InputMethodService int int int android.view.inputmethod.CompletionInfo[] int
      StackMap stack: android.view.inputmethod.InputMethodManager android.os.IBinder android.os.IBinder int
        28: iconst_0
      StackMap locals: android.inputmethodservice.InputMethodService int int int android.view.inputmethod.CompletionInfo[] int
      StackMap stack: android.view.inputmethod.InputMethodManager android.os.IBinder android.os.IBinder int int
        29: ior
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mBackDisposition:I
        30: .line 1062
            invokevirtual android.view.inputmethod.InputMethodManager.setImeWindowStatus:(Landroid/os/IBinder;Landroid/os/IBinder;II)V
        end local 5 // boolean showing
        31: .line 1065
      StackMap locals:
      StackMap stack:
            return
        end local 4 // android.view.inputmethod.CompletionInfo[] completions
        end local 3 // boolean showingInput
        end local 2 // int showFlags
        end local 1 // boolean visible
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   32     0          this  Landroid/inputmethodservice/InputMethodService;
            1   32     1       visible  Z
            2   32     2     showFlags  I
            3   32     3  showingInput  Z
            4   32     4   completions  [Landroid/view/inputmethod/CompletionInfo;
           26   31     5       showing  Z

  public android.inputmethodservice.AbstractInputMethodService$AbstractInputMethodImpl onCreateInputMethodInterface();
    descriptor: ()Landroid/inputmethodservice/AbstractInputMethodService$AbstractInputMethodImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1073
            new android.inputmethodservice.InputMethodService$InputMethodImpl
            dup
            aload 0 /* this */
            invokespecial android.inputmethodservice.InputMethodService$InputMethodImpl.<init>:(Landroid/inputmethodservice/InputMethodService;)V
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.inputmethodservice.AbstractInputMethodService$AbstractInputMethodSessionImpl onCreateInputMethodSessionInterface();
    descriptor: ()Landroid/inputmethodservice/AbstractInputMethodService$AbstractInputMethodSessionImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1082
            new android.inputmethodservice.InputMethodService$InputMethodSessionImpl
            dup
            aload 0 /* this */
            invokespecial android.inputmethodservice.InputMethodService$InputMethodSessionImpl.<init>:(Landroid/inputmethodservice/InputMethodService;)V
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.view.LayoutInflater getLayoutInflater();
    descriptor: ()Landroid/view/LayoutInflater;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1086
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInflater:Landroid/view/LayoutInflater;
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.app.Dialog getWindow();
    descriptor: ()Landroid/app/Dialog;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1090
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void setBackDisposition(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int disposition
         0: .line 1105
            iload 1 /* disposition */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mBackDisposition:I
            if_icmpne 2
         1: .line 1106
            return
         2: .line 1108
      StackMap locals:
      StackMap stack:
            iload 1 /* disposition */
            iconst_3
            if_icmpgt 3
            iload 1 /* disposition */
            ifge 5
         3: .line 1109
      StackMap locals:
      StackMap stack:
            ldc "InputMethodService"
            new java.lang.StringBuilder
            dup
            ldc "Invalid back disposition value ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* disposition */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ") specified."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         4: .line 1110
            return
         5: .line 1112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* disposition */
            putfield android.inputmethodservice.InputMethodService.mBackDisposition:I
         6: .line 1113
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartInputToken:Landroid/os/IBinder;
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isInputViewShown:()Z
            invokestatic android.inputmethodservice.InputMethodService.mapToImeWindowStatus:(Z)I
         7: .line 1114
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mBackDisposition:I
         8: .line 1113
            invokevirtual android.view.inputmethod.InputMethodManager.setImeWindowStatus:(Landroid/os/IBinder;Landroid/os/IBinder;II)V
         9: .line 1115
            return
        end local 1 // int disposition
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Landroid/inputmethodservice/InputMethodService;
            0   10     1  disposition  I
    MethodParameters:
             Name  Flags
      disposition  

  public int getBackDisposition();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1125
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mBackDisposition:I
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public int getMaxWidth();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1145
            aload 0 /* this */
            ldc "window"
            invokevirtual android.inputmethodservice.InputMethodService.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast android.view.WindowManager
            astore 1 /* wm */
        start local 1 // android.view.WindowManager wm
         1: .line 1146
            aload 1 /* wm */
            invokeinterface android.view.WindowManager.getDefaultDisplay:()Landroid/view/Display;
            invokevirtual android.view.Display.getWidth:()I
            ireturn
        end local 1 // android.view.WindowManager wm
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/inputmethodservice/InputMethodService;
            1    2     1    wm  Landroid/view/WindowManager;

  public android.view.inputmethod.InputBinding getCurrentInputBinding();
    descriptor: ()Landroid/view/inputmethod/InputBinding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1154
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputBinding:Landroid/view/inputmethod/InputBinding;
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.view.inputmethod.InputConnection getCurrentInputConnection();
    descriptor: ()Landroid/view/inputmethod/InputConnection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1162
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartedInputConnection:Landroid/view/inputmethod/InputConnection;
            astore 1 /* ic */
        start local 1 // android.view.inputmethod.InputConnection ic
         1: .line 1163
            aload 1 /* ic */
            ifnull 3
         2: .line 1164
            aload 1 /* ic */
            areturn
         3: .line 1166
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputConnection:Landroid/view/inputmethod/InputConnection;
            areturn
        end local 1 // android.view.inputmethod.InputConnection ic
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/inputmethodservice/InputMethodService;
            1    4     1    ic  Landroid/view/inputmethod/InputConnection;

  public final boolean switchToPreviousInputMethod();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1177
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            invokevirtual android.view.inputmethod.InputMethodManager.switchToPreviousInputMethodInternal:(Landroid/os/IBinder;)Z
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public final boolean switchToNextInputMethod(boolean);
    descriptor: (Z)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean onlyCurrentIme
         0: .line 1189
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            iload 1 /* onlyCurrentIme */
            invokevirtual android.view.inputmethod.InputMethodManager.switchToNextInputMethodInternal:(Landroid/os/IBinder;Z)Z
            ireturn
        end local 1 // boolean onlyCurrentIme
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  onlyCurrentIme  Z
    MethodParameters:
                Name  Flags
      onlyCurrentIme  

  public final boolean shouldOfferSwitchingToNextInputMethod();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1202
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            invokevirtual android.view.inputmethod.InputMethodManager.shouldOfferSwitchingToNextInputMethodInternal:(Landroid/os/IBinder;)Z
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public boolean getCurrentInputStarted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1206
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputStarted:Z
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.view.inputmethod.EditorInfo getCurrentInputEditorInfo();
    descriptor: ()Landroid/view/inputmethod/EditorInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1210
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void updateFullscreenMode();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1236
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.styleable cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onConfigureWindow(android.view.Window, boolean, boolean);
    descriptor: (Landroid/view/Window;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.Window win
        start local 2 // boolean isFullscreen
        start local 3 // boolean isCandidatesOnly
         0: .line 1282
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            invokevirtual android.inputmethodservice.SoftInputWindow.getWindow:()Landroid/view/Window;
            invokevirtual android.view.Window.getAttributes:()Landroid/view/WindowManager$LayoutParams;
            getfield android.view.WindowManager$LayoutParams.height:I
            istore 4 /* currentHeight */
        start local 4 // int currentHeight
         1: .line 1283
            iload 2 /* isFullscreen */
            ifeq 2
            iconst_m1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: bipush -2
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* newHeight */
        start local 5 // int newHeight
         4: .line 1284
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsInputViewShown:Z
            ifeq 5
            iload 4 /* currentHeight */
            iload 5 /* newHeight */
            if_icmpeq 5
         5: .line 1290
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            invokevirtual android.inputmethodservice.SoftInputWindow.getWindow:()Landroid/view/Window;
            iconst_m1
            iload 5 /* newHeight */
            invokevirtual android.view.Window.setLayout:(II)V
         6: .line 1291
            return
        end local 5 // int newHeight
        end local 4 // int currentHeight
        end local 3 // boolean isCandidatesOnly
        end local 2 // boolean isFullscreen
        end local 1 // android.view.Window win
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Landroid/inputmethodservice/InputMethodService;
            0    7     1               win  Landroid/view/Window;
            0    7     2      isFullscreen  Z
            0    7     3  isCandidatesOnly  Z
            1    7     4     currentHeight  I
            4    7     5         newHeight  I
    MethodParameters:
                  Name  Flags
      win               
      isFullscreen      
      isCandidatesOnly  

  public boolean isFullscreenMode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1299
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsFullscreen:Z
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public boolean onEvaluateFullscreenMode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1311
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            astore 1 /* config */
        start local 1 // android.content.res.Configuration config
         1: .line 1312
            aload 1 /* config */
            getfield android.content.res.Configuration.orientation:I
            iconst_2
            if_icmpeq 3
         2: .line 1313
            iconst_0
            ireturn
         3: .line 1315
      StackMap locals: android.content.res.Configuration
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            ifnull 6
         4: .line 1316
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            ldc 33554432
            iand
            ifeq 6
         5: .line 1317
            iconst_0
            ireturn
         6: .line 1319
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // android.content.res.Configuration config
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Landroid/inputmethodservice/InputMethodService;
            1    7     1  config  Landroid/content/res/Configuration;

  public void setExtractViewShown(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean shown
         0: .line 1332
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractViewHidden:Z
            iload 1 /* shown */
            if_icmpne 5
         1: .line 1333
            aload 0 /* this */
            iload 1 /* shown */
            ifeq 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack: android.inputmethodservice.InputMethodService
         2: iconst_1
      StackMap locals: android.inputmethodservice.InputMethodService int
      StackMap stack: android.inputmethodservice.InputMethodService int
         3: putfield android.inputmethodservice.InputMethodService.mExtractViewHidden:Z
         4: .line 1334
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.updateExtractFrameVisibility:()V
         5: .line 1336
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean shown
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Landroid/inputmethodservice/InputMethodService;
            0    6     1  shown  Z
    MethodParameters:
       Name  Flags
      shown  

  public boolean isExtractViewShown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1349
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsFullscreen:Z
            ifeq 1
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractViewHidden:Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/inputmethodservice/InputMethodService;

  void updateExtractFrameVisibility();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1365
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.styleable cannot be resolved to a variable\n\tcom.android.internal.R.styleable cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onComputeInsets(android.inputmethodservice.InputMethodService$Insets);
    descriptor: (Landroid/inputmethodservice/InputMethodService$Insets;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.inputmethodservice.InputMethodService$Insets outInsets
         0: .line 1390
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpLocation:[I
            astore 2 /* loc */
        start local 2 // int[] loc
         1: .line 1391
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputFrame:Landroid/widget/FrameLayout;
            invokevirtual android.widget.FrameLayout.getVisibility:()I
            ifne 4
         2: .line 1392
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputFrame:Landroid/widget/FrameLayout;
            aload 2 /* loc */
            invokevirtual android.widget.FrameLayout.getLocationInWindow:([I)V
         3: .line 1393
            goto 6
         4: .line 1394
      StackMap locals: int[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getWindow:()Landroid/app/Dialog;
            invokevirtual android.app.Dialog.getWindow:()Landroid/view/Window;
            invokevirtual android.view.Window.getDecorView:()Landroid/view/View;
            astore 3 /* decor */
        start local 3 // android.view.View decor
         5: .line 1395
            aload 2 /* loc */
            iconst_1
            aload 3 /* decor */
            invokevirtual android.view.View.getHeight:()I
            iastore
        end local 3 // android.view.View decor
         6: .line 1397
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isFullscreenMode:()Z
            ifeq 10
         7: .line 1399
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getWindow:()Landroid/app/Dialog;
            invokevirtual android.app.Dialog.getWindow:()Landroid/view/Window;
            invokevirtual android.view.Window.getDecorView:()Landroid/view/View;
            astore 3 /* decor */
        start local 3 // android.view.View decor
         8: .line 1400
            aload 1 /* outInsets */
            aload 3 /* decor */
            invokevirtual android.view.View.getHeight:()I
            putfield android.inputmethodservice.InputMethodService$Insets.contentTopInsets:I
        end local 3 // android.view.View decor
         9: .line 1401
            goto 11
        10: .line 1402
      StackMap locals:
      StackMap stack:
            aload 1 /* outInsets */
            aload 2 /* loc */
            iconst_1
            iaload
            putfield android.inputmethodservice.InputMethodService$Insets.contentTopInsets:I
        11: .line 1404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesFrame:Landroid/widget/FrameLayout;
            invokevirtual android.widget.FrameLayout.getVisibility:()I
            ifne 13
        12: .line 1405
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesFrame:Landroid/widget/FrameLayout;
            aload 2 /* loc */
            invokevirtual android.widget.FrameLayout.getLocationInWindow:([I)V
        13: .line 1407
      StackMap locals:
      StackMap stack:
            aload 1 /* outInsets */
            aload 2 /* loc */
            iconst_1
            iaload
            putfield android.inputmethodservice.InputMethodService$Insets.visibleTopInsets:I
        14: .line 1408
            aload 1 /* outInsets */
            iconst_2
            putfield android.inputmethodservice.InputMethodService$Insets.touchableInsets:I
        15: .line 1409
            aload 1 /* outInsets */
            getfield android.inputmethodservice.InputMethodService$Insets.touchableRegion:Landroid/graphics/Region;
            invokevirtual android.graphics.Region.setEmpty:()V
        16: .line 1410
            return
        end local 2 // int[] loc
        end local 1 // android.inputmethodservice.InputMethodService$Insets outInsets
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0       this  Landroid/inputmethodservice/InputMethodService;
            0   17     1  outInsets  Landroid/inputmethodservice/InputMethodService$Insets;
            1   17     2        loc  [I
            5    6     3      decor  Landroid/view/View;
            8    9     3      decor  Landroid/view/View;
    MethodParameters:
           Name  Flags
      outInsets  

  public void updateInputViewShown();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1421
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ifeq 1
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onEvaluateInputViewShown:()Z
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 1 /* isShown */
        start local 1 // boolean isShown
         3: .line 1422
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsInputViewShown:Z
            iload 1 /* isShown */
            if_icmpeq 13
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            ifeq 13
         4: .line 1423
            aload 0 /* this */
            iload 1 /* isShown */
            putfield android.inputmethodservice.InputMethodService.mIsInputViewShown:Z
         5: .line 1424
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputFrame:Landroid/widget/FrameLayout;
            iload 1 /* isShown */
            ifeq 6
            iconst_0
            goto 7
      StackMap locals: android.inputmethodservice.InputMethodService int
      StackMap stack: android.widget.FrameLayout
         6: bipush 8
      StackMap locals: android.inputmethodservice.InputMethodService int
      StackMap stack: android.widget.FrameLayout int
         7: invokevirtual android.widget.FrameLayout.setVisibility:(I)V
         8: .line 1425
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputView:Landroid/view/View;
            ifnonnull 13
         9: .line 1426
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.initialize:()V
        10: .line 1427
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onCreateInputView:()Landroid/view/View;
            astore 2 /* v */
        start local 2 // android.view.View v
        11: .line 1428
            aload 2 /* v */
            ifnull 13
        12: .line 1429
            aload 0 /* this */
            aload 2 /* v */
            invokevirtual android.inputmethodservice.InputMethodService.setInputView:(Landroid/view/View;)V
        end local 2 // android.view.View v
        13: .line 1433
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean isShown
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Landroid/inputmethodservice/InputMethodService;
            3   14     1  isShown  Z
           11   13     2        v  Landroid/view/View;

  public boolean isShowInputRequested();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1439
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public boolean isInputViewShown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1448
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsInputViewShown:Z
            ifeq 1
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/inputmethodservice/InputMethodService;

  public boolean onEvaluateInputViewShown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1464
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
            ifnonnull 3
         1: .line 1465
            ldc "InputMethodService"
            ldc "onEvaluateInputViewShown: mSettingsObserver must not be null here."
            invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         2: .line 1466
            iconst_0
            ireturn
         3: .line 1468
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
            invokevirtual android.inputmethodservice.InputMethodService$SettingsObserver.shouldShowImeWithHardKeyboard:()Z
            ifeq 5
         4: .line 1469
            iconst_1
            ireturn
         5: .line 1471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            astore 1 /* config */
        start local 1 // android.content.res.Configuration config
         6: .line 1472
            aload 1 /* config */
            getfield android.content.res.Configuration.keyboard:I
            iconst_1
            if_icmpeq 9
         7: .line 1473
            aload 1 /* config */
            getfield android.content.res.Configuration.hardKeyboardHidden:I
            iconst_2
            if_icmpeq 9
         8: .line 1472
            iconst_0
            ireturn
      StackMap locals: android.content.res.Configuration
      StackMap stack:
         9: iconst_1
            ireturn
        end local 1 // android.content.res.Configuration config
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Landroid/inputmethodservice/InputMethodService;
            6   10     1  config  Landroid/content/res/Configuration;

  public void setCandidatesViewShown(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean shown
         0: .line 1481
            aload 0 /* this */
            iload 1 /* shown */
            invokevirtual android.inputmethodservice.InputMethodService.updateCandidatesVisibility:(Z)V
         1: .line 1482
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ifne 6
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            iload 1 /* shown */
            if_icmpeq 6
         2: .line 1486
            iload 1 /* shown */
            ifeq 5
         3: .line 1487
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.showWindow:(Z)V
         4: .line 1488
            goto 6
         5: .line 1489
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.doHideWindow:()V
         6: .line 1492
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean shown
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Landroid/inputmethodservice/InputMethodService;
            0    7     1  shown  Z
    MethodParameters:
       Name  Flags
      shown  

  void updateCandidatesVisibility(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean shown
         0: .line 1495
            iload 1 /* shown */
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCandidatesHiddenVisibility:()I
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* vis */
        start local 2 // int vis
         3: .line 1496
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesVisibility:I
            iload 2 /* vis */
            if_icmpeq 6
         4: .line 1497
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesFrame:Landroid/widget/FrameLayout;
            iload 2 /* vis */
            invokevirtual android.widget.FrameLayout.setVisibility:(I)V
         5: .line 1498
            aload 0 /* this */
            iload 2 /* vis */
            putfield android.inputmethodservice.InputMethodService.mCandidatesVisibility:I
         6: .line 1500
      StackMap locals: int
      StackMap stack:
            return
        end local 2 // int vis
        end local 1 // boolean shown
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Landroid/inputmethodservice/InputMethodService;
            0    7     1  shown  Z
            3    7     2    vis  I
    MethodParameters:
       Name  Flags
      shown  

  public int getCandidatesHiddenVisibility();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1513
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isExtractViewShown:()Z
            ifeq 1
            bipush 8
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_4
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/inputmethodservice/InputMethodService;

  public void showStatusIcon(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int iconResId
         0: .line 1517
            aload 0 /* this */
            iload 1 /* iconResId */
            putfield android.inputmethodservice.InputMethodService.mStatusIcon:I
         1: .line 1518
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getPackageName:()Ljava/lang/String;
            iload 1 /* iconResId */
            invokevirtual android.view.inputmethod.InputMethodManager.showStatusIconInternal:(Landroid/os/IBinder;Ljava/lang/String;I)V
         2: .line 1519
            return
        end local 1 // int iconResId
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Landroid/inputmethodservice/InputMethodService;
            0    3     1  iconResId  I
    MethodParameters:
           Name  Flags
      iconResId  

  public void hideStatusIcon();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1522
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mStatusIcon:I
         1: .line 1523
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            invokevirtual android.view.inputmethod.InputMethodManager.hideStatusIconInternal:(Landroid/os/IBinder;)V
         2: .line 1524
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/inputmethodservice/InputMethodService;

  public void switchInputMethod(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // java.lang.String id
         0: .line 1534
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 1 /* id */
            invokevirtual android.view.inputmethod.InputMethodManager.setInputMethodInternal:(Landroid/os/IBinder;Ljava/lang/String;)V
         1: .line 1535
            return
        end local 1 // java.lang.String id
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/inputmethodservice/InputMethodService;
            0    2     1    id  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      id    

  public final void switchInputMethod(java.lang.String, android.view.inputmethod.InputMethodSubtype);
    descriptor: (Ljava/lang/String;Landroid/view/inputmethod/InputMethodSubtype;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // java.lang.String id
        start local 2 // android.view.inputmethod.InputMethodSubtype subtype
         0: .line 1546
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 1 /* id */
            aload 2 /* subtype */
            invokevirtual android.view.inputmethod.InputMethodManager.setInputMethodAndSubtypeInternal:(Landroid/os/IBinder;Ljava/lang/String;Landroid/view/inputmethod/InputMethodSubtype;)V
         1: .line 1547
            return
        end local 2 // android.view.inputmethod.InputMethodSubtype subtype
        end local 1 // java.lang.String id
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Landroid/inputmethodservice/InputMethodService;
            0    2     1       id  Ljava/lang/String;
            0    2     2  subtype  Landroid/view/inputmethod/InputMethodSubtype;
    MethodParameters:
         Name  Flags
      id       
      subtype  

  public void setExtractView(android.view.View);
    descriptor: (Landroid/view/View;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1557
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.id cannot be resolved to a variable\n\tcom.android.internal.R.id cannot be resolved to a variable\n\tcom.android.internal.R.id cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;
    MethodParameters:
      Name  Flags
      view  

  public void setCandidatesView(android.view.View);
    descriptor: (Landroid/view/View;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.View view
         0: .line 1580
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesFrame:Landroid/widget/FrameLayout;
            invokevirtual android.widget.FrameLayout.removeAllViews:()V
         1: .line 1581
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesFrame:Landroid/widget/FrameLayout;
            aload 1 /* view */
            new android.widget.FrameLayout$LayoutParams
            dup
         2: .line 1582
            iconst_m1
         3: .line 1583
            bipush -2
            invokespecial android.widget.FrameLayout$LayoutParams.<init>:(II)V
         4: .line 1581
            invokevirtual android.widget.FrameLayout.addView:(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V
         5: .line 1584
            return
        end local 1 // android.view.View view
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Landroid/inputmethodservice/InputMethodService;
            0    6     1  view  Landroid/view/View;
    MethodParameters:
      Name  Flags
      view  

  public void setInputView(android.view.View);
    descriptor: (Landroid/view/View;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.View view
         0: .line 1593
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputFrame:Landroid/widget/FrameLayout;
            invokevirtual android.widget.FrameLayout.removeAllViews:()V
         1: .line 1594
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputFrame:Landroid/widget/FrameLayout;
            aload 1 /* view */
            new android.widget.FrameLayout$LayoutParams
            dup
         2: .line 1595
            iconst_m1
         3: .line 1596
            bipush -2
            invokespecial android.widget.FrameLayout$LayoutParams.<init>:(II)V
         4: .line 1594
            invokevirtual android.widget.FrameLayout.addView:(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V
         5: .line 1597
            aload 0 /* this */
            aload 1 /* view */
            putfield android.inputmethodservice.InputMethodService.mInputView:Landroid/view/View;
         6: .line 1598
            return
        end local 1 // android.view.View view
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Landroid/inputmethodservice/InputMethodService;
            0    7     1  view  Landroid/view/View;
    MethodParameters:
      Name  Flags
      view  

  public android.view.View onCreateExtractTextView();
    descriptor: ()Landroid/view/View;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1608
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.layout cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.view.View onCreateCandidatesView();
    descriptor: ()Landroid/view/View;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1622
            aconst_null
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public android.view.View onCreateInputView();
    descriptor: ()Landroid/view/View;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1637
            aconst_null
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onStartInputView(android.view.inputmethod.EditorInfo, boolean);
    descriptor: (Landroid/view/inputmethod/EditorInfo;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.EditorInfo info
        start local 2 // boolean restarting
         0: .line 1653
            return
        end local 2 // boolean restarting
        end local 1 // android.view.inputmethod.EditorInfo info
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/inputmethodservice/InputMethodService;
            0    1     1        info  Landroid/view/inputmethod/EditorInfo;
            0    1     2  restarting  Z
    MethodParameters:
            Name  Flags
      info        
      restarting  

  public void onFinishInputView(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean finishingInput
         0: .line 1669
            iload 1 /* finishingInput */
            ifne 4
         1: .line 1670
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 2 /* ic */
        start local 2 // android.view.inputmethod.InputConnection ic
         2: .line 1671
            aload 2 /* ic */
            ifnull 4
         3: .line 1672
            aload 2 /* ic */
            invokeinterface android.view.inputmethod.InputConnection.finishComposingText:()Z
            pop
        end local 2 // android.view.inputmethod.InputConnection ic
         4: .line 1675
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean finishingInput
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Landroid/inputmethodservice/InputMethodService;
            0    5     1  finishingInput  Z
            2    4     2              ic  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
                Name  Flags
      finishingInput  

  public void onStartCandidatesView(android.view.inputmethod.EditorInfo, boolean);
    descriptor: (Landroid/view/inputmethod/EditorInfo;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.EditorInfo info
        start local 2 // boolean restarting
         0: .line 1698
            return
        end local 2 // boolean restarting
        end local 1 // android.view.inputmethod.EditorInfo info
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/inputmethodservice/InputMethodService;
            0    1     1        info  Landroid/view/inputmethod/EditorInfo;
            0    1     2  restarting  Z
    MethodParameters:
            Name  Flags
      info        
      restarting  

  public void onFinishCandidatesView(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean finishingInput
         0: .line 1714
            iload 1 /* finishingInput */
            ifne 4
         1: .line 1715
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 2 /* ic */
        start local 2 // android.view.inputmethod.InputConnection ic
         2: .line 1716
            aload 2 /* ic */
            ifnull 4
         3: .line 1717
            aload 2 /* ic */
            invokeinterface android.view.inputmethod.InputConnection.finishComposingText:()Z
            pop
        end local 2 // android.view.inputmethod.InputConnection ic
         4: .line 1720
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean finishingInput
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Landroid/inputmethodservice/InputMethodService;
            0    5     1  finishingInput  Z
            2    4     2              ic  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
                Name  Flags
      finishingInput  

  public boolean onShowInputRequested(int, boolean);
    descriptor: (IZ)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int flags
        start local 2 // boolean configChange
         0: .line 1738
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onEvaluateInputViewShown:()Z
            ifne 2
         1: .line 1739
            iconst_0
            ireturn
         2: .line 1741
      StackMap locals:
      StackMap stack:
            iload 1 /* flags */
            iconst_1
            iand
            ifne 8
         3: .line 1742
            iload 2 /* configChange */
            ifne 5
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onEvaluateFullscreenMode:()Z
            ifeq 5
         4: .line 1748
            iconst_0
            ireturn
         5: .line 1750
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
            invokevirtual android.inputmethodservice.InputMethodService$SettingsObserver.shouldShowImeWithHardKeyboard:()Z
            ifne 8
         6: .line 1751
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            getfield android.content.res.Configuration.keyboard:I
            iconst_1
            if_icmpeq 8
         7: .line 1755
            iconst_0
            ireturn
         8: .line 1758
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // boolean configChange
        end local 1 // int flags
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Landroid/inputmethodservice/InputMethodService;
            0    9     1         flags  I
            0    9     2  configChange  Z
    MethodParameters:
              Name  Flags
      flags         
      configChange  

  private boolean dispatchOnShowInputRequested(int, boolean);
    descriptor: (IZ)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int flags
        start local 2 // boolean configChange
         0: .line 1775
            aload 0 /* this */
            iload 1 /* flags */
            iload 2 /* configChange */
            invokevirtual android.inputmethodservice.InputMethodService.onShowInputRequested:(IZ)Z
            istore 3 /* result */
        start local 3 // boolean result
         1: .line 1776
            iload 3 /* result */
            ifeq 4
         2: .line 1777
            aload 0 /* this */
            iload 1 /* flags */
            putfield android.inputmethodservice.InputMethodService.mShowInputFlags:I
         3: .line 1778
            goto 5
         4: .line 1779
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mShowInputFlags:I
         5: .line 1781
      StackMap locals:
      StackMap stack:
            iload 3 /* result */
            ireturn
        end local 3 // boolean result
        end local 2 // boolean configChange
        end local 1 // int flags
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Landroid/inputmethodservice/InputMethodService;
            0    6     1         flags  I
            0    6     2  configChange  Z
            1    6     3        result  Z
    MethodParameters:
              Name  Flags
      flags         
      configChange  

  public void showWindow(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean showInput
         0: .line 1793
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInShowWindow:Z
            ifeq 3
         1: .line 1794
            ldc "InputMethodService"
            ldc "Re-entrance in to showWindow"
            invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         2: .line 1795
            return
         3: .line 1799
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            putfield android.inputmethodservice.InputMethodService.mWindowWasVisible:Z
         4: .line 1800
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mInShowWindow:Z
         5: .line 1801
            aload 0 /* this */
            iload 1 /* showInput */
            invokevirtual android.inputmethodservice.InputMethodService.showWindowInner:(Z)V
         6: .line 1802
            goto 15
      StackMap locals:
      StackMap stack: android.view.WindowManager$BadTokenException
         7: astore 2 /* e */
        start local 2 // android.view.WindowManager$BadTokenException e
         8: .line 1806
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
         9: .line 1807
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mWindowAdded:Z
        10: .line 1812
            aload 2 /* e */
            athrow
        end local 2 // android.view.WindowManager$BadTokenException e
        11: .line 1813
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
        12: .line 1815
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mWindowWasVisible:Z
        13: .line 1816
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mInShowWindow:Z
        14: .line 1817
            aload 3
            athrow
        15: .line 1815
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mWindowWasVisible:Z
        16: .line 1816
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mInShowWindow:Z
        17: .line 1818
            return
        end local 1 // boolean showInput
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Landroid/inputmethodservice/InputMethodService;
            0   18     1  showInput  Z
            8   11     2          e  Landroid/view/WindowManager$BadTokenException;
      Exception table:
        from    to  target  type
           3     6       7  Class android.view.WindowManager$BadTokenException
           3    11      11  any
    MethodParameters:
           Name  Flags
      showInput  

  void showWindowInner(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean showInput
         0: .line 1821
            iconst_0
            istore 2 /* doShowInput */
        start local 2 // boolean doShowInput
         1: .line 1823
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            ifeq 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isInputViewShown:()Z
            ifeq 4
            iconst_2
            goto 5
      StackMap locals:
      StackMap stack: int
         4: iconst_0
      StackMap locals: android.inputmethodservice.InputMethodService int int
      StackMap stack: int int
         5: ior
         6: .line 1822
            istore 3 /* previousImeWindowStatus */
        start local 3 // int previousImeWindowStatus
         7: .line 1824
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
         8: .line 1825
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ifne 11
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputStarted:Z
            ifeq 11
            iload 1 /* showInput */
            ifeq 11
         9: .line 1826
            iconst_1
            istore 2 /* doShowInput */
        10: .line 1827
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
        11: .line 1831
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.initialize:()V
        12: .line 1832
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.updateFullscreenMode:()V
        13: .line 1833
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.updateInputViewShown:()V
        14: .line 1835
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowAdded:Z
            ifeq 15
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowCreated:Z
            ifne 21
        15: .line 1836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mWindowAdded:Z
        16: .line 1837
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mWindowCreated:Z
        17: .line 1838
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.initialize:()V
        18: .line 1840
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onCreateCandidatesView:()Landroid/view/View;
            astore 4 /* v */
        start local 4 // android.view.View v
        19: .line 1842
            aload 4 /* v */
            ifnull 21
        20: .line 1843
            aload 0 /* this */
            aload 4 /* v */
            invokevirtual android.inputmethodservice.InputMethodService.setCandidatesView:(Landroid/view/View;)V
        end local 4 // android.view.View v
        21: .line 1846
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ifeq 26
        22: .line 1847
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
            ifne 29
        23: .line 1849
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
        24: .line 1850
            aload 0 /* this */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.onStartInputView:(Landroid/view/inputmethod/EditorInfo;Z)V
        25: .line 1852
            goto 29
      StackMap locals:
      StackMap stack:
        26: aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
            ifne 29
        27: .line 1854
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
        28: .line 1855
            aload 0 /* this */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.onStartCandidatesView:(Landroid/view/inputmethod/EditorInfo;Z)V
        29: .line 1858
      StackMap locals:
      StackMap stack:
            iload 2 /* doShowInput */
            ifeq 31
        30: .line 1859
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.startExtractingText:(Z)V
        31: .line 1862
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isInputViewShown:()Z
            invokestatic android.inputmethodservice.InputMethodService.mapToImeWindowStatus:(Z)I
            istore 4 /* nextImeWindowStatus */
        start local 4 // int nextImeWindowStatus
        32: .line 1863
            iload 3 /* previousImeWindowStatus */
            iload 4 /* nextImeWindowStatus */
            if_icmpeq 36
        33: .line 1864
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartInputToken:Landroid/os/IBinder;
            iload 4 /* nextImeWindowStatus */
        34: .line 1865
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mBackDisposition:I
        35: .line 1864
            invokevirtual android.view.inputmethod.InputMethodManager.setImeWindowStatus:(Landroid/os/IBinder;Landroid/os/IBinder;II)V
        36: .line 1867
      StackMap locals: int
      StackMap stack:
            iload 3 /* previousImeWindowStatus */
            iconst_1
            iand
            ifne 40
        37: .line 1869
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onWindowShown:()V
        38: .line 1870
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            invokevirtual android.inputmethodservice.SoftInputWindow.show:()V
        39: .line 1873
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mShouldClearInsetOfPreviousIme:Z
        40: .line 1875
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int nextImeWindowStatus
        end local 3 // int previousImeWindowStatus
        end local 2 // boolean doShowInput
        end local 1 // boolean showInput
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   41     0                     this  Landroid/inputmethodservice/InputMethodService;
            0   41     1                showInput  Z
            1   41     2              doShowInput  Z
            7   41     3  previousImeWindowStatus  I
           19   21     4                        v  Landroid/view/View;
           32   41     4      nextImeWindowStatus  I
    MethodParameters:
           Name  Flags
      showInput  

  private void finishViews();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1878
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
            ifeq 3
         1: .line 1880
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.onFinishInputView:(Z)V
         2: .line 1881
            goto 5
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
            ifeq 5
         4: .line 1883
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.onFinishCandidatesView:(Z)V
         5: .line 1885
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
         6: .line 1886
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
         7: .line 1887
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Landroid/inputmethodservice/InputMethodService;

  private void doHideWindow();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1890
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartInputToken:Landroid/os/IBinder;
            iconst_0
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mBackDisposition:I
            invokevirtual android.view.inputmethod.InputMethodManager.setImeWindowStatus:(Landroid/os/IBinder;Landroid/os/IBinder;II)V
         1: .line 1891
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.hideWindow:()V
         2: .line 1892
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/inputmethodservice/InputMethodService;

  public void hideWindow();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1895
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.finishViews:()V
         1: .line 1896
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            ifeq 6
         2: .line 1897
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindow:Landroid/inputmethodservice/SoftInputWindow;
            invokevirtual android.inputmethodservice.SoftInputWindow.hide:()V
         3: .line 1898
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
         4: .line 1899
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onWindowHidden:()V
         5: .line 1900
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mWindowWasVisible:Z
         6: .line 1902
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.updateFullscreenMode:()V
         7: .line 1903
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onWindowShown();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1912
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onWindowHidden();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1920
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  private void clearInsetOfPreviousIme();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1929
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShouldClearInsetOfPreviousIme:Z
            ifne 1
            return
         1: .line 1931
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            invokevirtual android.view.inputmethod.InputMethodManager.clearLastInputMethodWindowForTransition:(Landroid/os/IBinder;)V
         2: .line 1932
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mShouldClearInsetOfPreviousIme:Z
         3: .line 1933
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onBindInput();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1944
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onUnbindInput();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1954
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onStartInput(android.view.inputmethod.EditorInfo, boolean);
    descriptor: (Landroid/view/inputmethod/EditorInfo;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.EditorInfo attribute
        start local 2 // boolean restarting
         0: .line 1970
            return
        end local 2 // boolean restarting
        end local 1 // android.view.inputmethod.EditorInfo attribute
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/inputmethodservice/InputMethodService;
            0    1     1   attribute  Landroid/view/inputmethod/EditorInfo;
            0    1     2  restarting  Z
    MethodParameters:
            Name  Flags
      attribute   
      restarting  

  void doFinishInput();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 1973
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
            ifeq 3
         1: .line 1975
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.onFinishInputView:(Z)V
         2: .line 1976
            goto 5
      StackMap locals:
      StackMap stack:
         3: aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
            ifeq 5
         4: .line 1978
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.onFinishCandidatesView:(Z)V
         5: .line 1980
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
         6: .line 1981
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
         7: .line 1982
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputStarted:Z
            ifeq 9
         8: .line 1984
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.onFinishInput:()V
         9: .line 1986
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.inputmethodservice.InputMethodService.mInputStarted:Z
        10: .line 1987
            aload 0 /* this */
            aconst_null
            putfield android.inputmethodservice.InputMethodService.mStartedInputConnection:Landroid/view/inputmethod/InputConnection;
        11: .line 1988
            aload 0 /* this */
            aconst_null
            putfield android.inputmethodservice.InputMethodService.mCurCompletions:[Landroid/view/inputmethod/CompletionInfo;
        12: .line 1989
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Landroid/inputmethodservice/InputMethodService;

  void doStartInput(android.view.inputmethod.InputConnection, android.view.inputmethod.EditorInfo, boolean);
    descriptor: (Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;Z)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.InputConnection ic
        start local 2 // android.view.inputmethod.EditorInfo attribute
        start local 3 // boolean restarting
         0: .line 1992
            iload 3 /* restarting */
            ifne 2
         1: .line 1993
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.doFinishInput:()V
         2: .line 1995
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mInputStarted:Z
         3: .line 1996
            aload 0 /* this */
            aload 1 /* ic */
            putfield android.inputmethodservice.InputMethodService.mStartedInputConnection:Landroid/view/inputmethod/InputConnection;
         4: .line 1997
            aload 0 /* this */
            aload 2 /* attribute */
            putfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
         5: .line 1998
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.initialize:()V
         6: .line 2000
            aload 0 /* this */
            aload 2 /* attribute */
            iload 3 /* restarting */
            invokevirtual android.inputmethodservice.InputMethodService.onStartInput:(Landroid/view/inputmethod/EditorInfo;Z)V
         7: .line 2001
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            ifeq 16
         8: .line 2002
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ifeq 13
         9: .line 2004
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
        10: .line 2005
            aload 0 /* this */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            iload 3 /* restarting */
            invokevirtual android.inputmethodservice.InputMethodService.onStartInputView:(Landroid/view/inputmethod/EditorInfo;Z)V
        11: .line 2006
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.startExtractingText:(Z)V
        12: .line 2007
            goto 16
      StackMap locals:
      StackMap stack:
        13: aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesVisibility:I
            ifne 16
        14: .line 2009
            aload 0 /* this */
            iconst_1
            putfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
        15: .line 2010
            aload 0 /* this */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            iload 3 /* restarting */
            invokevirtual android.inputmethodservice.InputMethodService.onStartCandidatesView:(Landroid/view/inputmethod/EditorInfo;Z)V
        16: .line 2013
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean restarting
        end local 2 // android.view.inputmethod.EditorInfo attribute
        end local 1 // android.view.inputmethod.InputConnection ic
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Landroid/inputmethodservice/InputMethodService;
            0   17     1          ic  Landroid/view/inputmethod/InputConnection;
            0   17     2   attribute  Landroid/view/inputmethod/EditorInfo;
            0   17     3  restarting  Z
    MethodParameters:
            Name  Flags
      ic          
      attribute   
      restarting  

  public void onFinishInput();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 2028
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 1 /* ic */
        start local 1 // android.view.inputmethod.InputConnection ic
         1: .line 2029
            aload 1 /* ic */
            ifnull 3
         2: .line 2030
            aload 1 /* ic */
            invokeinterface android.view.inputmethod.InputConnection.finishComposingText:()Z
            pop
         3: .line 2032
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            return
        end local 1 // android.view.inputmethod.InputConnection ic
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/inputmethodservice/InputMethodService;
            1    4     1    ic  Landroid/view/inputmethod/InputConnection;

  public void onDisplayCompletions(android.view.inputmethod.CompletionInfo[]);
    descriptor: ([Landroid/view/inputmethod/CompletionInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.CompletionInfo[] completions
         0: .line 2045
            return
        end local 1 // android.view.inputmethod.CompletionInfo[] completions
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  completions  [Landroid/view/inputmethod/CompletionInfo;
    MethodParameters:
             Name  Flags
      completions  

  public void onUpdateExtractedText(int, android.view.inputmethod.ExtractedText);
    descriptor: (ILandroid/view/inputmethod/ExtractedText;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int token
        start local 2 // android.view.inputmethod.ExtractedText text
         0: .line 2054
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedToken:I
            iload 1 /* token */
            if_icmpeq 2
         1: .line 2055
            return
         2: .line 2057
      StackMap locals:
      StackMap stack:
            aload 2 /* text */
            ifnull 6
         3: .line 2058
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            ifnull 6
         4: .line 2059
            aload 0 /* this */
            aload 2 /* text */
            putfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
         5: .line 2060
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            aload 2 /* text */
            invokevirtual android.inputmethodservice.ExtractEditText.setExtractedText:(Landroid/view/inputmethod/ExtractedText;)V
         6: .line 2063
      StackMap locals:
      StackMap stack:
            return
        end local 2 // android.view.inputmethod.ExtractedText text
        end local 1 // int token
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Landroid/inputmethodservice/InputMethodService;
            0    7     1  token  I
            0    7     2   text  Landroid/view/inputmethod/ExtractedText;
    MethodParameters:
       Name  Flags
      token  
      text   

  public void onUpdateSelection(int, int, int, int, int, int);
    descriptor: (IIIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=10, args_size=7
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int oldSelStart
        start local 2 // int oldSelEnd
        start local 3 // int newSelStart
        start local 4 // int newSelEnd
        start local 5 // int candidatesStart
        start local 6 // int candidatesEnd
         0: .line 2082
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            astore 7 /* eet */
        start local 7 // android.inputmethodservice.ExtractEditText eet
         1: .line 2083
            aload 7 /* eet */
            ifnull 13
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isFullscreenMode:()Z
            ifeq 13
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            ifnull 13
         2: .line 2084
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            getfield android.view.inputmethod.ExtractedText.startOffset:I
            istore 8 /* off */
        start local 8 // int off
         3: .line 2085
            aload 7 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.startInternalChanges:()V
         4: .line 2086
            iload 3 /* newSelStart */
            iload 8 /* off */
            isub
            istore 3 /* newSelStart */
         5: .line 2087
            iload 4 /* newSelEnd */
            iload 8 /* off */
            isub
            istore 4 /* newSelEnd */
         6: .line 2088
            aload 7 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            invokeinterface android.text.Editable.length:()I
            istore 9 /* len */
        start local 9 // int len
         7: .line 2089
            iload 3 /* newSelStart */
            ifge 8
            iconst_0
            istore 3 /* newSelStart */
            goto 9
         8: .line 2090
      StackMap locals: android.inputmethodservice.ExtractEditText int int
      StackMap stack:
            iload 3 /* newSelStart */
            iload 9 /* len */
            if_icmple 9
            iload 9 /* len */
            istore 3 /* newSelStart */
         9: .line 2091
      StackMap locals:
      StackMap stack:
            iload 4 /* newSelEnd */
            ifge 10
            iconst_0
            istore 4 /* newSelEnd */
            goto 11
        10: .line 2092
      StackMap locals:
      StackMap stack:
            iload 4 /* newSelEnd */
            iload 9 /* len */
            if_icmple 11
            iload 9 /* len */
            istore 4 /* newSelEnd */
        11: .line 2093
      StackMap locals:
      StackMap stack:
            aload 7 /* eet */
            iload 3 /* newSelStart */
            iload 4 /* newSelEnd */
            invokevirtual android.inputmethodservice.ExtractEditText.setSelection:(II)V
        12: .line 2094
            aload 7 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.finishInternalChanges:()V
        end local 9 // int len
        end local 8 // int off
        13: .line 2096
      StackMap locals:
      StackMap stack:
            return
        end local 7 // android.inputmethodservice.ExtractEditText eet
        end local 6 // int candidatesEnd
        end local 5 // int candidatesStart
        end local 4 // int newSelEnd
        end local 3 // int newSelStart
        end local 2 // int oldSelEnd
        end local 1 // int oldSelStart
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             this  Landroid/inputmethodservice/InputMethodService;
            0   14     1      oldSelStart  I
            0   14     2        oldSelEnd  I
            0   14     3      newSelStart  I
            0   14     4        newSelEnd  I
            0   14     5  candidatesStart  I
            0   14     6    candidatesEnd  I
            1   14     7              eet  Landroid/inputmethodservice/ExtractEditText;
            3   13     8              off  I
            7   13     9              len  I
    MethodParameters:
                 Name  Flags
      oldSelStart      
      oldSelEnd        
      newSelStart      
      newSelEnd        
      candidatesStart  
      candidatesEnd    

  public void onViewClicked(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean focusChanged
         0: .line 2107
            return
        end local 1 // boolean focusChanged
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  focusChanged  Z
    MethodParameters:
              Name  Flags
      focusChanged  

  public void onUpdateCursor(android.graphics.Rect);
    descriptor: (Landroid/graphics/Rect;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.graphics.Rect newCursor
         0: .line 2118
            return
        end local 1 // android.graphics.Rect newCursor
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  newCursor  Landroid/graphics/Rect;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      newCursor  

  public void onUpdateCursorAnchorInfo(android.view.inputmethod.CursorAnchorInfo);
    descriptor: (Landroid/view/inputmethod/CursorAnchorInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.CursorAnchorInfo cursorAnchorInfo
         0: .line 2129
            return
        end local 1 // android.view.inputmethod.CursorAnchorInfo cursorAnchorInfo
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  cursorAnchorInfo  Landroid/view/inputmethod/CursorAnchorInfo;
    MethodParameters:
                  Name  Flags
      cursorAnchorInfo  

  public void requestHideSelf(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int flags
         0: .line 2142
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            iload 1 /* flags */
            invokevirtual android.view.inputmethod.InputMethodManager.hideSoftInputFromInputMethodInternal:(Landroid/os/IBinder;I)V
         1: .line 2143
            return
        end local 1 // int flags
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/inputmethodservice/InputMethodService;
            0    2     1  flags  I
    MethodParameters:
       Name  Flags
      flags  

  public final void requestShowSelf(int);
    descriptor: (I)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int flags
         0: .line 2154
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            iload 1 /* flags */
            invokevirtual android.view.inputmethod.InputMethodManager.showSoftInputFromInputMethodInternal:(Landroid/os/IBinder;I)V
         1: .line 2155
            return
        end local 1 // int flags
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/inputmethodservice/InputMethodService;
            0    2     1  flags  I
    MethodParameters:
       Name  Flags
      flags  

  private boolean handleBack(boolean);
    descriptor: (Z)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean doIt
         0: .line 2158
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            ifeq 3
         1: .line 2161
            iload 1 /* doIt */
            ifeq 2
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.requestHideSelf:(I)V
         2: .line 2162
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 2163
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            ifeq 9
         4: .line 2164
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesVisibility:I
            ifne 7
         5: .line 2167
            iload 1 /* doIt */
            ifeq 8
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.setCandidatesViewShown:(Z)V
         6: .line 2168
            goto 8
         7: .line 2172
      StackMap locals:
      StackMap stack:
            iload 1 /* doIt */
            ifeq 8
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.doHideWindow:()V
         8: .line 2174
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         9: .line 2176
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // boolean doIt
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Landroid/inputmethodservice/InputMethodService;
            0   10     1  doIt  Z
    MethodParameters:
      Name  Flags
      doIt  

  private android.inputmethodservice.ExtractEditText getExtractEditTextIfVisible();
    descriptor: ()Landroid/inputmethodservice/ExtractEditText;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 2184
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isExtractViewShown:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isInputViewShown:()Z
            ifne 2
         1: .line 2185
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         2: .line 2187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            areturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/inputmethodservice/InputMethodService;

  public boolean onKeyDown(int, android.view.KeyEvent);
    descriptor: (ILandroid/view/KeyEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyCode
        start local 2 // android.view.KeyEvent event
         0: .line 2214
            aload 2 /* event */
            invokevirtual android.view.KeyEvent.getKeyCode:()I
            iconst_4
            if_icmpne 8
         1: .line 2215
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getExtractEditTextIfVisible:()Landroid/inputmethodservice/ExtractEditText;
            astore 3 /* eet */
        start local 3 // android.inputmethodservice.ExtractEditText eet
         2: .line 2216
            aload 3 /* eet */
            ifnull 4
            aload 3 /* eet */
            aload 2 /* event */
            invokevirtual android.inputmethodservice.ExtractEditText.handleBackInTextActionModeIfNeeded:(Landroid/view/KeyEvent;)Z
            ifeq 4
         3: .line 2217
            iconst_1
            ireturn
         4: .line 2219
      StackMap locals: android.inputmethodservice.ExtractEditText
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.handleBack:(Z)Z
            ifeq 7
         5: .line 2220
            aload 2 /* event */
            invokevirtual android.view.KeyEvent.startTracking:()V
         6: .line 2221
            iconst_1
            ireturn
         7: .line 2223
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // android.inputmethodservice.ExtractEditText eet
         8: .line 2225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* keyCode */
            aload 2 /* event */
            iconst_m1
            invokevirtual android.inputmethodservice.InputMethodService.doMovementKey:(ILandroid/view/KeyEvent;I)Z
            ireturn
        end local 2 // android.view.KeyEvent event
        end local 1 // int keyCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Landroid/inputmethodservice/InputMethodService;
            0    9     1  keyCode  I
            0    9     2    event  Landroid/view/KeyEvent;
            2    8     3      eet  Landroid/inputmethodservice/ExtractEditText;
    MethodParameters:
         Name  Flags
      keyCode  
      event    

  public boolean onKeyLongPress(int, android.view.KeyEvent);
    descriptor: (ILandroid/view/KeyEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyCode
        start local 2 // android.view.KeyEvent event
         0: .line 2234
            iconst_0
            ireturn
        end local 2 // android.view.KeyEvent event
        end local 1 // int keyCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  keyCode  I
            0    1     2    event  Landroid/view/KeyEvent;
    MethodParameters:
         Name  Flags
      keyCode  
      event    

  public boolean onKeyMultiple(int, int, android.view.KeyEvent);
    descriptor: (IILandroid/view/KeyEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyCode
        start local 2 // int count
        start local 3 // android.view.KeyEvent event
         0: .line 2250
            aload 0 /* this */
            iload 1 /* keyCode */
            aload 3 /* event */
            iload 2 /* count */
            invokevirtual android.inputmethodservice.InputMethodService.doMovementKey:(ILandroid/view/KeyEvent;I)Z
            ireturn
        end local 3 // android.view.KeyEvent event
        end local 2 // int count
        end local 1 // int keyCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  keyCode  I
            0    1     2    count  I
            0    1     3    event  Landroid/view/KeyEvent;
    MethodParameters:
         Name  Flags
      keyCode  
      count    
      event    

  public boolean onKeyUp(int, android.view.KeyEvent);
    descriptor: (ILandroid/view/KeyEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyCode
        start local 2 // android.view.KeyEvent event
         0: .line 2266
            aload 2 /* event */
            invokevirtual android.view.KeyEvent.getKeyCode:()I
            iconst_4
            if_icmpne 6
         1: .line 2267
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getExtractEditTextIfVisible:()Landroid/inputmethodservice/ExtractEditText;
            astore 3 /* eet */
        start local 3 // android.inputmethodservice.ExtractEditText eet
         2: .line 2268
            aload 3 /* eet */
            ifnull 4
            aload 3 /* eet */
            aload 2 /* event */
            invokevirtual android.inputmethodservice.ExtractEditText.handleBackInTextActionModeIfNeeded:(Landroid/view/KeyEvent;)Z
            ifeq 4
         3: .line 2269
            iconst_1
            ireturn
         4: .line 2271
      StackMap locals: android.inputmethodservice.ExtractEditText
      StackMap stack:
            aload 2 /* event */
            invokevirtual android.view.KeyEvent.isTracking:()Z
            ifeq 6
            aload 2 /* event */
            invokevirtual android.view.KeyEvent.isCanceled:()Z
            ifne 6
         5: .line 2272
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.handleBack:(Z)Z
            ireturn
        end local 3 // android.inputmethodservice.ExtractEditText eet
         6: .line 2275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* keyCode */
            aload 2 /* event */
            bipush -2
            invokevirtual android.inputmethodservice.InputMethodService.doMovementKey:(ILandroid/view/KeyEvent;I)Z
            ireturn
        end local 2 // android.view.KeyEvent event
        end local 1 // int keyCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Landroid/inputmethodservice/InputMethodService;
            0    7     1  keyCode  I
            0    7     2    event  Landroid/view/KeyEvent;
            2    6     3      eet  Landroid/inputmethodservice/ExtractEditText;
    MethodParameters:
         Name  Flags
      keyCode  
      event    

  public boolean onTrackballEvent(android.view.MotionEvent);
    descriptor: (Landroid/view/MotionEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.MotionEvent event
         0: .line 2288
            iconst_0
            ireturn
        end local 1 // android.view.MotionEvent event
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  event  Landroid/view/MotionEvent;
    MethodParameters:
       Name  Flags
      event  

  public boolean onGenericMotionEvent(android.view.MotionEvent);
    descriptor: (Landroid/view/MotionEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.MotionEvent event
         0: .line 2301
            iconst_0
            ireturn
        end local 1 // android.view.MotionEvent event
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  event  Landroid/view/MotionEvent;
    MethodParameters:
       Name  Flags
      event  

  public void onAppPrivateCommand(java.lang.String, android.os.Bundle);
    descriptor: (Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // java.lang.String action
        start local 2 // android.os.Bundle data
         0: .line 2305
            return
        end local 2 // android.os.Bundle data
        end local 1 // java.lang.String action
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  action  Ljava/lang/String;
            0    1     2    data  Landroid/os/Bundle;
    MethodParameters:
        Name  Flags
      action  
      data    

  private void onToggleSoftInput(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int showFlags
        start local 2 // int hideFlags
         0: .line 2312
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isInputViewShown:()Z
            ifeq 3
         1: .line 2313
            aload 0 /* this */
            iload 2 /* hideFlags */
            invokevirtual android.inputmethodservice.InputMethodService.requestHideSelf:(I)V
         2: .line 2314
            goto 4
         3: .line 2315
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* showFlags */
            invokevirtual android.inputmethodservice.InputMethodService.requestShowSelf:(I)V
         4: .line 2317
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int hideFlags
        end local 1 // int showFlags
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Landroid/inputmethodservice/InputMethodService;
            0    5     1  showFlags  I
            0    5     2  hideFlags  I
    MethodParameters:
           Name  Flags
      showFlags  
      hideFlags  

  void reportExtractedMovement(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyCode
        start local 2 // int count
         0: .line 2323
            iconst_0
            istore 3 /* dx */
        start local 3 // int dx
         1: iconst_0
            istore 4 /* dy */
        start local 4 // int dy
         2: .line 2324
            iload 1 /* keyCode */
            tableswitch { // 19 - 22
                   19: 7
                   20: 9
                   21: 3
                   22: 5
              default: 10
          }
         3: .line 2326
      StackMap locals: int int
      StackMap stack:
            iload 2 /* count */
            ineg
            istore 3 /* dx */
         4: .line 2327
            goto 10
         5: .line 2329
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 3 /* dx */
         6: .line 2330
            goto 10
         7: .line 2332
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            ineg
            istore 4 /* dy */
         8: .line 2333
            goto 10
         9: .line 2335
      StackMap locals:
      StackMap stack:
            iload 2 /* count */
            istore 4 /* dy */
        10: .line 2338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* dx */
            iload 4 /* dy */
            invokevirtual android.inputmethodservice.InputMethodService.onExtractedCursorMovement:(II)V
        11: .line 2339
            return
        end local 4 // int dy
        end local 3 // int dx
        end local 2 // int count
        end local 1 // int keyCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Landroid/inputmethodservice/InputMethodService;
            0   12     1  keyCode  I
            0   12     2    count  I
            1   12     3       dx  I
            2   12     4       dy  I
    MethodParameters:
         Name  Flags
      keyCode  
      count    

  boolean doMovementKey(int, android.view.KeyEvent, int);
    descriptor: (ILandroid/view/KeyEvent;I)Z
    flags: (0x0000) 
    Code:
      stack=5, locals=9, args_size=4
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyCode
        start local 2 // android.view.KeyEvent event
        start local 3 // int count
         0: .line 2342
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getExtractEditTextIfVisible:()Landroid/inputmethodservice/ExtractEditText;
            astore 4 /* eet */
        start local 4 // android.inputmethodservice.ExtractEditText eet
         1: .line 2343
            aload 4 /* eet */
            ifnull 26
         2: .line 2347
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getMovementMethod:()Landroid/text/method/MovementMethod;
            astore 5 /* movement */
        start local 5 // android.text.method.MovementMethod movement
         3: .line 2348
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getLayout:()Landroid/text/Layout;
            astore 6 /* layout */
        start local 6 // android.text.Layout layout
         4: .line 2349
            aload 5 /* movement */
            ifnull 24
            aload 6 /* layout */
            ifnull 24
         5: .line 2352
            iload 3 /* count */
            iconst_m1
            if_icmpne 9
         6: .line 2353
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            iload 1 /* keyCode */
            aload 2 /* event */
            invokeinterface android.text.method.MovementMethod.onKeyDown:(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z
            ifeq 24
         7: .line 2354
            aload 0 /* this */
            iload 1 /* keyCode */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.reportExtractedMovement:(II)V
         8: .line 2355
            iconst_1
            ireturn
         9: .line 2357
      StackMap locals: android.inputmethodservice.ExtractEditText android.text.method.MovementMethod android.text.Layout
      StackMap stack:
            iload 3 /* count */
            bipush -2
            if_icmpne 12
        10: .line 2358
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            iload 1 /* keyCode */
            aload 2 /* event */
            invokeinterface android.text.method.MovementMethod.onKeyUp:(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z
            ifeq 24
        11: .line 2359
            iconst_1
            ireturn
        12: .line 2362
      StackMap locals:
      StackMap stack:
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            aload 2 /* event */
            invokeinterface android.text.method.MovementMethod.onKeyOther:(Landroid/widget/TextView;Landroid/text/Spannable;Landroid/view/KeyEvent;)Z
            ifeq 15
        13: .line 2363
            aload 0 /* this */
            iload 1 /* keyCode */
            iload 3 /* count */
            invokevirtual android.inputmethodservice.InputMethodService.reportExtractedMovement:(II)V
        14: .line 2364
            goto 24
        15: .line 2365
      StackMap locals:
      StackMap stack:
            aload 2 /* event */
            iconst_0
            invokestatic android.view.KeyEvent.changeAction:(Landroid/view/KeyEvent;I)Landroid/view/KeyEvent;
            astore 7 /* down */
        start local 7 // android.view.KeyEvent down
        16: .line 2366
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            iload 1 /* keyCode */
            aload 7 /* down */
            invokeinterface android.text.method.MovementMethod.onKeyDown:(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z
            ifeq 24
        17: .line 2367
            aload 2 /* event */
            iconst_1
            invokestatic android.view.KeyEvent.changeAction:(Landroid/view/KeyEvent;I)Landroid/view/KeyEvent;
            astore 8 /* up */
        start local 8 // android.view.KeyEvent up
        18: .line 2368
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            iload 1 /* keyCode */
            aload 8 /* up */
            invokeinterface android.text.method.MovementMethod.onKeyUp:(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z
            pop
        19: .line 2369
            goto 22
        20: .line 2370
      StackMap locals: android.view.KeyEvent android.view.KeyEvent
      StackMap stack:
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            iload 1 /* keyCode */
            aload 7 /* down */
            invokeinterface android.text.method.MovementMethod.onKeyDown:(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z
            pop
        21: .line 2371
            aload 5 /* movement */
            aload 4 /* eet */
            aload 4 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.getText:()Landroid/text/Editable;
            iload 1 /* keyCode */
            aload 8 /* up */
            invokeinterface android.text.method.MovementMethod.onKeyUp:(Landroid/widget/TextView;Landroid/text/Spannable;ILandroid/view/KeyEvent;)Z
            pop
        22: .line 2369
      StackMap locals:
      StackMap stack:
            iinc 3 /* count */ -1
            iload 3 /* count */
            ifgt 20
        23: .line 2373
            aload 0 /* this */
            iload 1 /* keyCode */
            iload 3 /* count */
            invokevirtual android.inputmethodservice.InputMethodService.reportExtractedMovement:(II)V
        end local 8 // android.view.KeyEvent up
        end local 7 // android.view.KeyEvent down
        24: .line 2380
      StackMap locals:
      StackMap stack:
            iload 1 /* keyCode */
            tableswitch { // 19 - 22
                   19: 25
                   20: 25
                   21: 25
                   22: 25
              default: 26
          }
        25: .line 2385
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 6 // android.text.Layout layout
        end local 5 // android.text.method.MovementMethod movement
        26: .line 2389
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // android.inputmethodservice.ExtractEditText eet
        end local 3 // int count
        end local 2 // android.view.KeyEvent event
        end local 1 // int keyCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   27     0      this  Landroid/inputmethodservice/InputMethodService;
            0   27     1   keyCode  I
            0   27     2     event  Landroid/view/KeyEvent;
            0   27     3     count  I
            1   27     4       eet  Landroid/inputmethodservice/ExtractEditText;
            3   26     5  movement  Landroid/text/method/MovementMethod;
            4   26     6    layout  Landroid/text/Layout;
           16   24     7      down  Landroid/view/KeyEvent;
           18   24     8        up  Landroid/view/KeyEvent;
    MethodParameters:
         Name  Flags
      keyCode  
      event    
      count    

  public void sendDownUpKeyEvents(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=5, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int keyEventCode
         0: .line 2412
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 2 /* ic */
        start local 2 // android.view.inputmethod.InputConnection ic
         1: .line 2413
            aload 2 /* ic */
            ifnonnull 2
            return
         2: .line 2414
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            invokestatic android.os.SystemClock.uptimeMillis:()J
            lstore 3 /* eventTime */
        start local 3 // long eventTime
         3: .line 2415
            aload 2 /* ic */
            new android.view.KeyEvent
            dup
            lload 3 /* eventTime */
            lload 3 /* eventTime */
         4: .line 2416
            iconst_0
            iload 1 /* keyEventCode */
            iconst_0
            iconst_0
            iconst_m1
            iconst_0
         5: .line 2417
            bipush 6
            invokespecial android.view.KeyEvent.<init>:(JJIIIIIII)V
         6: .line 2415
            invokeinterface android.view.inputmethod.InputConnection.sendKeyEvent:(Landroid/view/KeyEvent;)Z
            pop
         7: .line 2418
            aload 2 /* ic */
            new android.view.KeyEvent
            dup
            lload 3 /* eventTime */
            invokestatic android.os.SystemClock.uptimeMillis:()J
         8: .line 2419
            iconst_1
            iload 1 /* keyEventCode */
            iconst_0
            iconst_0
            iconst_m1
            iconst_0
         9: .line 2420
            bipush 6
            invokespecial android.view.KeyEvent.<init>:(JJIIIIIII)V
        10: .line 2418
            invokeinterface android.view.inputmethod.InputConnection.sendKeyEvent:(Landroid/view/KeyEvent;)Z
            pop
        11: .line 2421
            return
        end local 3 // long eventTime
        end local 2 // android.view.inputmethod.InputConnection ic
        end local 1 // int keyEventCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Landroid/inputmethodservice/InputMethodService;
            0   12     1  keyEventCode  I
            1   12     2            ic  Landroid/view/inputmethod/InputConnection;
            3   12     3     eventTime  J
    MethodParameters:
              Name  Flags
      keyEventCode  

  public boolean sendDefaultEditorAction(boolean);
    descriptor: (Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean fromEnterKey
         0: .line 2440
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputEditorInfo:()Landroid/view/inputmethod/EditorInfo;
            astore 2 /* ei */
        start local 2 // android.view.inputmethod.EditorInfo ei
         1: .line 2441
            aload 2 /* ei */
            ifnull 11
         2: .line 2442
            iload 1 /* fromEnterKey */
            ifeq 4
            aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
         3: .line 2443
            ldc 1073741824
            iand
            ifne 11
         4: .line 2444
      StackMap locals: android.view.inputmethod.EditorInfo
      StackMap stack:
            aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            sipush 255
            iand
         5: .line 2445
            iconst_1
         6: .line 2444
            if_icmpeq 11
         7: .line 2449
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 3 /* ic */
        start local 3 // android.view.inputmethod.InputConnection ic
         8: .line 2450
            aload 3 /* ic */
            ifnull 10
         9: .line 2451
            aload 3 /* ic */
            aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            sipush 255
            iand
            invokeinterface android.view.inputmethod.InputConnection.performEditorAction:(I)Z
            pop
        10: .line 2453
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // android.view.inputmethod.InputConnection ic
        11: .line 2456
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // android.view.inputmethod.EditorInfo ei
        end local 1 // boolean fromEnterKey
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Landroid/inputmethodservice/InputMethodService;
            0   12     1  fromEnterKey  Z
            1   12     2            ei  Landroid/view/inputmethod/EditorInfo;
            8   11     3            ic  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
              Name  Flags
      fromEnterKey  

  public void sendKeyChar(char);
    descriptor: (C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // char charCode
         0: .line 2474
            iload 1 /* charCode */
            tableswitch { // 10 - 10
                   10: 1
              default: 4
          }
         1: .line 2476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.sendDefaultEditorAction:(Z)Z
            ifne 10
         2: .line 2477
            aload 0 /* this */
            bipush 66
            invokevirtual android.inputmethodservice.InputMethodService.sendDownUpKeyEvents:(I)V
         3: .line 2479
            goto 10
         4: .line 2482
      StackMap locals:
      StackMap stack:
            iload 1 /* charCode */
            bipush 48
            if_icmplt 7
            iload 1 /* charCode */
            bipush 57
            if_icmpgt 7
         5: .line 2483
            aload 0 /* this */
            iload 1 /* charCode */
            bipush 48
            isub
            bipush 7
            iadd
            invokevirtual android.inputmethodservice.InputMethodService.sendDownUpKeyEvents:(I)V
         6: .line 2484
            goto 10
         7: .line 2485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 2 /* ic */
        start local 2 // android.view.inputmethod.InputConnection ic
         8: .line 2486
            aload 2 /* ic */
            ifnull 10
         9: .line 2487
            aload 2 /* ic */
            iload 1 /* charCode */
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            iconst_1
            invokeinterface android.view.inputmethod.InputConnection.commitText:(Ljava/lang/CharSequence;I)Z
            pop
        end local 2 // android.view.inputmethod.InputConnection ic
        10: .line 2492
      StackMap locals:
      StackMap stack:
            return
        end local 1 // char charCode
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Landroid/inputmethodservice/InputMethodService;
            0   11     1  charCode  C
            8   10     2        ic  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
          Name  Flags
      charCode  

  public void onExtractedSelectionChanged(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int start
        start local 2 // int end
         0: .line 2501
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 3 /* conn */
        start local 3 // android.view.inputmethod.InputConnection conn
         1: .line 2502
            aload 3 /* conn */
            ifnull 3
         2: .line 2503
            aload 3 /* conn */
            iload 1 /* start */
            iload 2 /* end */
            invokeinterface android.view.inputmethod.InputConnection.setSelection:(II)Z
            pop
         3: .line 2505
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            return
        end local 3 // android.view.inputmethod.InputConnection conn
        end local 2 // int end
        end local 1 // int start
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Landroid/inputmethodservice/InputMethodService;
            0    4     1  start  I
            0    4     2    end  I
            1    4     3   conn  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
       Name  Flags
      start  
      end    

  public void onExtractedDeleteText(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int start
        start local 2 // int end
         0: .line 2511
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 3 /* conn */
        start local 3 // android.view.inputmethod.InputConnection conn
         1: .line 2512
            aload 3 /* conn */
            ifnull 5
         2: .line 2513
            aload 3 /* conn */
            invokeinterface android.view.inputmethod.InputConnection.finishComposingText:()Z
            pop
         3: .line 2514
            aload 3 /* conn */
            iload 1 /* start */
            iload 1 /* start */
            invokeinterface android.view.inputmethod.InputConnection.setSelection:(II)Z
            pop
         4: .line 2515
            aload 3 /* conn */
            iconst_0
            iload 2 /* end */
            iload 1 /* start */
            isub
            invokeinterface android.view.inputmethod.InputConnection.deleteSurroundingText:(II)Z
            pop
         5: .line 2517
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            return
        end local 3 // android.view.inputmethod.InputConnection conn
        end local 2 // int end
        end local 1 // int start
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Landroid/inputmethodservice/InputMethodService;
            0    6     1  start  I
            0    6     2    end  I
            1    6     3   conn  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
       Name  Flags
      start  
      end    

  public void onExtractedReplaceText(int, int, java.lang.CharSequence);
    descriptor: (IILjava/lang/CharSequence;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int start
        start local 2 // int end
        start local 3 // java.lang.CharSequence text
         0: .line 2523
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 4 /* conn */
        start local 4 // android.view.inputmethod.InputConnection conn
         1: .line 2524
            aload 4 /* conn */
            ifnull 4
         2: .line 2525
            aload 4 /* conn */
            iload 1 /* start */
            iload 2 /* end */
            invokeinterface android.view.inputmethod.InputConnection.setComposingRegion:(II)Z
            pop
         3: .line 2526
            aload 4 /* conn */
            aload 3 /* text */
            iconst_1
            invokeinterface android.view.inputmethod.InputConnection.commitText:(Ljava/lang/CharSequence;I)Z
            pop
         4: .line 2528
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            return
        end local 4 // android.view.inputmethod.InputConnection conn
        end local 3 // java.lang.CharSequence text
        end local 2 // int end
        end local 1 // int start
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Landroid/inputmethodservice/InputMethodService;
            0    5     1  start  I
            0    5     2    end  I
            0    5     3   text  Ljava/lang/CharSequence;
            1    5     4   conn  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
       Name  Flags
      start  
      end    
      text   

  public void onExtractedSetSpan(java.lang.Object, int, int, int);
    descriptor: (Ljava/lang/Object;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // java.lang.Object span
        start local 2 // int start
        start local 3 // int end
        start local 4 // int flags
         0: .line 2534
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 5 /* conn */
        start local 5 // android.view.inputmethod.InputConnection conn
         1: .line 2535
            aload 5 /* conn */
            ifnull 8
         2: .line 2536
            aload 5 /* conn */
            iload 2 /* start */
            iload 3 /* end */
            invokeinterface android.view.inputmethod.InputConnection.setSelection:(II)Z
            ifne 3
            return
         3: .line 2537
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            aload 5 /* conn */
            iconst_1
            invokeinterface android.view.inputmethod.InputConnection.getSelectedText:(I)Ljava/lang/CharSequence;
            astore 6 /* text */
        start local 6 // java.lang.CharSequence text
         4: .line 2538
            aload 6 /* text */
            instanceof android.text.Spannable
            ifeq 8
         5: .line 2539
            aload 6 /* text */
            checkcast android.text.Spannable
            aload 1 /* span */
            iconst_0
            aload 6 /* text */
            invokeinterface java.lang.CharSequence.length:()I
            iload 4 /* flags */
            invokeinterface android.text.Spannable.setSpan:(Ljava/lang/Object;III)V
         6: .line 2540
            aload 5 /* conn */
            iload 2 /* start */
            iload 3 /* end */
            invokeinterface android.view.inputmethod.InputConnection.setComposingRegion:(II)Z
            pop
         7: .line 2541
            aload 5 /* conn */
            aload 6 /* text */
            iconst_1
            invokeinterface android.view.inputmethod.InputConnection.commitText:(Ljava/lang/CharSequence;I)Z
            pop
        end local 6 // java.lang.CharSequence text
         8: .line 2544
      StackMap locals:
      StackMap stack:
            return
        end local 5 // android.view.inputmethod.InputConnection conn
        end local 4 // int flags
        end local 3 // int end
        end local 2 // int start
        end local 1 // java.lang.Object span
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Landroid/inputmethodservice/InputMethodService;
            0    9     1   span  Ljava/lang/Object;
            0    9     2  start  I
            0    9     3    end  I
            0    9     4  flags  I
            1    9     5   conn  Landroid/view/inputmethod/InputConnection;
            4    8     6   text  Ljava/lang/CharSequence;
    MethodParameters:
       Name  Flags
      span   
      start  
      end    
      flags  

  public void onExtractedTextClicked();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 2554
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            ifnonnull 2
         1: .line 2555
            return
         2: .line 2557
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            invokevirtual android.inputmethodservice.ExtractEditText.hasVerticalScrollBar:()Z
            ifeq 4
         3: .line 2558
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.setCandidatesViewShown:(Z)V
         4: .line 2560
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Landroid/inputmethodservice/InputMethodService;

  public void onExtractedCursorMovement(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int dx
        start local 2 // int dy
         0: .line 2573
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            ifnull 1
            iload 2 /* dy */
            ifne 2
         1: .line 2574
      StackMap locals:
      StackMap stack:
            return
         2: .line 2576
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            invokevirtual android.inputmethodservice.ExtractEditText.hasVerticalScrollBar:()Z
            ifeq 4
         3: .line 2577
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.setCandidatesViewShown:(Z)V
         4: .line 2579
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int dy
        end local 1 // int dx
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Landroid/inputmethodservice/InputMethodService;
            0    5     1    dx  I
            0    5     2    dy  I
    MethodParameters:
      Name  Flags
      dx    
      dy    

  public boolean onExtractTextContextMenuItem(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // int id
         0: .line 2590
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 2 /* ic */
        start local 2 // android.view.inputmethod.InputConnection ic
         1: .line 2591
            aload 2 /* ic */
            ifnull 3
         2: .line 2592
            aload 2 /* ic */
            iload 1 /* id */
            invokeinterface android.view.inputmethod.InputConnection.performContextMenuAction:(I)Z
            pop
         3: .line 2594
      StackMap locals: android.view.inputmethod.InputConnection
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // android.view.inputmethod.InputConnection ic
        end local 1 // int id
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/inputmethodservice/InputMethodService;
            0    4     1    id  I
            1    4     2    ic  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
      Name  Flags
      id    

  public java.lang.CharSequence getTextForImeAction(int);
    descriptor: (I)Ljava/lang/CharSequence;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 2613
            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\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.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;
    MethodParameters:
            Name  Flags
      imeOptions  

  private int getIconForImeAction(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 2641
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.drawable cannot be resolved to a variable\n\tcom.android.internal.R.drawable cannot be resolved to a variable\n\tcom.android.internal.R.drawable cannot be resolved to a variable\n\tcom.android.internal.R.drawable cannot be resolved to a variable\n\tcom.android.internal.R.drawable cannot be resolved to a variable\n\tcom.android.internal.R.drawable cannot be resolved to a variable\n\tcom.android.internal.R.drawable cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;
    MethodParameters:
            Name  Flags
      imeOptions  

  public void onUpdateExtractingVisibility(android.view.inputmethod.EditorInfo);
    descriptor: (Landroid/view/inputmethod/EditorInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.EditorInfo ei
         0: .line 2667
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.inputType:I
            ifeq 2
         1: .line 2668
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            ldc 268435456
            iand
            ifeq 4
         2: .line 2670
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            invokevirtual android.inputmethodservice.InputMethodService.setExtractViewShown:(Z)V
         3: .line 2671
            return
         4: .line 2674
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual android.inputmethodservice.InputMethodService.setExtractViewShown:(Z)V
         5: .line 2675
            return
        end local 1 // android.view.inputmethod.EditorInfo ei
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Landroid/inputmethodservice/InputMethodService;
            0    6     1    ei  Landroid/view/inputmethod/EditorInfo;
    MethodParameters:
      Name  Flags
      ei    

  public void onUpdateExtractingViews(android.view.inputmethod.EditorInfo);
    descriptor: (Landroid/view/inputmethod/EditorInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.EditorInfo ei
         0: .line 2693
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isExtractViewShown:()Z
            ifne 2
         1: .line 2694
            return
         2: .line 2697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAccessories:Landroid/view/ViewGroup;
            ifnonnull 4
         3: .line 2698
            return
         4: .line 2700
      StackMap locals:
      StackMap stack:
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionLabel:Ljava/lang/CharSequence;
            ifnonnull 9
         5: .line 2701
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            sipush 255
            iand
            iconst_1
            if_icmpeq 8
         6: .line 2702
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            ldc 536870912
            iand
            ifne 8
         7: .line 2703
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.inputType:I
            ifne 9
         8: .line 2700
      StackMap locals:
      StackMap stack:
            iconst_0
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_1
      StackMap locals:
      StackMap stack: int
        10: istore 2 /* hasAction */
        start local 2 // boolean hasAction
        11: .line 2704
            iload 2 /* hasAction */
            ifeq 28
        12: .line 2705
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAccessories:Landroid/view/ViewGroup;
            iconst_0
            invokevirtual android.view.ViewGroup.setVisibility:(I)V
        13: .line 2706
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            ifnull 31
        14: .line 2707
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            instanceof android.widget.ImageButton
            ifeq 22
        15: .line 2708
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            checkcast android.widget.ImageButton
        16: .line 2709
            aload 0 /* this */
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            invokevirtual android.inputmethodservice.InputMethodService.getIconForImeAction:(I)I
            invokevirtual android.widget.ImageButton.setImageResource:(I)V
        17: .line 2710
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionLabel:Ljava/lang/CharSequence;
            ifnull 20
        18: .line 2711
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionLabel:Ljava/lang/CharSequence;
            invokevirtual android.view.View.setContentDescription:(Ljava/lang/CharSequence;)V
        19: .line 2712
            goto 26
        20: .line 2713
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            aload 0 /* this */
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            invokevirtual android.inputmethodservice.InputMethodService.getTextForImeAction:(I)Ljava/lang/CharSequence;
            invokevirtual android.view.View.setContentDescription:(Ljava/lang/CharSequence;)V
        21: .line 2715
            goto 26
        22: .line 2716
      StackMap locals:
      StackMap stack:
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionLabel:Ljava/lang/CharSequence;
            ifnull 25
        23: .line 2717
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            checkcast android.widget.TextView
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionLabel:Ljava/lang/CharSequence;
            invokevirtual android.widget.TextView.setText:(Ljava/lang/CharSequence;)V
        24: .line 2718
            goto 26
        25: .line 2719
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            checkcast android.widget.TextView
            aload 0 /* this */
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            invokevirtual android.inputmethodservice.InputMethodService.getTextForImeAction:(I)Ljava/lang/CharSequence;
            invokevirtual android.widget.TextView.setText:(Ljava/lang/CharSequence;)V
        26: .line 2722
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mActionClickListener:Landroid/view/View$OnClickListener;
            invokevirtual android.view.View.setOnClickListener:(Landroid/view/View$OnClickListener;)V
        27: .line 2724
            goto 31
        28: .line 2725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAccessories:Landroid/view/ViewGroup;
            bipush 8
            invokevirtual android.view.ViewGroup.setVisibility:(I)V
        29: .line 2726
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            ifnull 31
        30: .line 2727
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractAction:Landroid/view/View;
            aconst_null
            invokevirtual android.view.View.setOnClickListener:(Landroid/view/View$OnClickListener;)V
        31: .line 2730
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean hasAction
        end local 1 // android.view.inputmethod.EditorInfo ei
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   32     0       this  Landroid/inputmethodservice/InputMethodService;
            0   32     1         ei  Landroid/view/inputmethod/EditorInfo;
           11   32     2  hasAction  Z
    MethodParameters:
      Name  Flags
      ei    

  public void onExtractingInputChanged(android.view.inputmethod.EditorInfo);
    descriptor: (Landroid/view/inputmethod/EditorInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.EditorInfo ei
         0: .line 2739
            aload 1 /* ei */
            getfield android.view.inputmethod.EditorInfo.inputType:I
            ifne 2
         1: .line 2740
            aload 0 /* this */
            iconst_2
            invokevirtual android.inputmethodservice.InputMethodService.requestHideSelf:(I)V
         2: .line 2742
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.view.inputmethod.EditorInfo ei
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/inputmethodservice/InputMethodService;
            0    3     1    ei  Landroid/view/inputmethod/EditorInfo;
    MethodParameters:
      Name  Flags
      ei    

  void startExtractingText(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // boolean inputChanged
         0: .line 2745
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractEditText:Landroid/inputmethodservice/ExtractEditText;
            astore 2 /* eet */
        start local 2 // android.inputmethodservice.ExtractEditText eet
         1: .line 2746
            aload 2 /* eet */
            ifnull 42
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputStarted:()Z
            ifeq 42
         2: .line 2747
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isFullscreenMode:()Z
            ifeq 42
         3: .line 2748
            aload 0 /* this */
            dup
            getfield android.inputmethodservice.InputMethodService.mExtractedToken:I
            iconst_1
            iadd
            putfield android.inputmethodservice.InputMethodService.mExtractedToken:I
         4: .line 2749
            new android.view.inputmethod.ExtractedTextRequest
            dup
            invokespecial android.view.inputmethod.ExtractedTextRequest.<init>:()V
            astore 3 /* req */
        start local 3 // android.view.inputmethod.ExtractedTextRequest req
         5: .line 2750
            aload 3 /* req */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedToken:I
            putfield android.view.inputmethod.ExtractedTextRequest.token:I
         6: .line 2751
            aload 3 /* req */
            iconst_1
            putfield android.view.inputmethod.ExtractedTextRequest.flags:I
         7: .line 2752
            aload 3 /* req */
            bipush 10
            putfield android.view.inputmethod.ExtractedTextRequest.hintMaxLines:I
         8: .line 2753
            aload 3 /* req */
            sipush 10000
            putfield android.view.inputmethod.ExtractedTextRequest.hintMaxChars:I
         9: .line 2754
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 4 /* ic */
        start local 4 // android.view.inputmethod.InputConnection ic
        10: .line 2755
            aload 0 /* this */
            aload 4 /* ic */
            ifnonnull 11
            aconst_null
            goto 12
        11: .line 2756
      StackMap locals: android.inputmethodservice.InputMethodService int android.inputmethodservice.ExtractEditText android.view.inputmethod.ExtractedTextRequest android.view.inputmethod.InputConnection
      StackMap stack: android.inputmethodservice.InputMethodService
            aload 4 /* ic */
            aload 3 /* req */
            iconst_1
            invokeinterface android.view.inputmethod.InputConnection.getExtractedText:(Landroid/view/inputmethod/ExtractedTextRequest;I)Landroid/view/inputmethod/ExtractedText;
        12: .line 2755
      StackMap locals: android.inputmethodservice.InputMethodService int android.inputmethodservice.ExtractEditText android.view.inputmethod.ExtractedTextRequest android.view.inputmethod.InputConnection
      StackMap stack: android.inputmethodservice.InputMethodService android.view.inputmethod.ExtractedText
            putfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
        13: .line 2757
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            ifnull 14
            aload 4 /* ic */
            ifnonnull 17
        14: .line 2758
      StackMap locals:
      StackMap stack:
            ldc "InputMethodService"
            new java.lang.StringBuilder
            dup
            ldc "Unexpected null in startExtractingText : mExtractedText = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        15: .line 2759
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", input connection = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* ic */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        16: .line 2758
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        17: .line 2761
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputEditorInfo:()Landroid/view/inputmethod/EditorInfo;
            astore 5 /* ei */
        start local 5 // android.view.inputmethod.EditorInfo ei
        18: .line 2764
            aload 2 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.startInternalChanges:()V
        19: .line 2765
            aload 0 /* this */
            aload 5 /* ei */
            invokevirtual android.inputmethodservice.InputMethodService.onUpdateExtractingVisibility:(Landroid/view/inputmethod/EditorInfo;)V
        20: .line 2766
            aload 0 /* this */
            aload 5 /* ei */
            invokevirtual android.inputmethodservice.InputMethodService.onUpdateExtractingViews:(Landroid/view/inputmethod/EditorInfo;)V
        21: .line 2767
            aload 5 /* ei */
            getfield android.view.inputmethod.EditorInfo.inputType:I
            istore 6 /* inputType */
        start local 6 // int inputType
        22: .line 2768
            iload 6 /* inputType */
            bipush 15
            iand
        23: .line 2769
            iconst_1
        24: .line 2768
            if_icmpne 27
        25: .line 2770
            iload 6 /* inputType */
            ldc 262144
            iand
            ifeq 27
        26: .line 2771
            iload 6 /* inputType */
            ldc 131072
            ior
            istore 6 /* inputType */
        27: .line 2774
      StackMap locals: android.view.inputmethod.EditorInfo int
      StackMap stack:
            aload 2 /* eet */
            iload 6 /* inputType */
            invokevirtual android.inputmethodservice.ExtractEditText.setInputType:(I)V
        28: .line 2775
            aload 2 /* eet */
            aload 5 /* ei */
            getfield android.view.inputmethod.EditorInfo.hintText:Ljava/lang/CharSequence;
            invokevirtual android.inputmethodservice.ExtractEditText.setHint:(Ljava/lang/CharSequence;)V
        29: .line 2776
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            ifnull 33
        30: .line 2777
            aload 2 /* eet */
            iconst_1
            invokevirtual android.inputmethodservice.ExtractEditText.setEnabled:(Z)V
        31: .line 2778
            aload 2 /* eet */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            invokevirtual android.inputmethodservice.ExtractEditText.setExtractedText:(Landroid/view/inputmethod/ExtractedText;)V
        32: .line 2779
            goto 39
        33: .line 2780
      StackMap locals:
      StackMap stack:
            aload 2 /* eet */
            iconst_0
            invokevirtual android.inputmethodservice.ExtractEditText.setEnabled:(Z)V
        34: .line 2781
            aload 2 /* eet */
            ldc ""
            invokevirtual android.inputmethodservice.ExtractEditText.setText:(Ljava/lang/CharSequence;)V
        end local 6 // int inputType
        35: .line 2783
            goto 39
      StackMap locals: android.inputmethodservice.InputMethodService int android.inputmethodservice.ExtractEditText android.view.inputmethod.ExtractedTextRequest android.view.inputmethod.InputConnection android.view.inputmethod.EditorInfo
      StackMap stack: java.lang.Throwable
        36: astore 7
        37: .line 2784
            aload 2 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.finishInternalChanges:()V
        38: .line 2785
            aload 7
            athrow
        39: .line 2784
      StackMap locals:
      StackMap stack:
            aload 2 /* eet */
            invokevirtual android.inputmethodservice.ExtractEditText.finishInternalChanges:()V
        40: .line 2787
            iload 1 /* inputChanged */
            ifeq 42
        41: .line 2788
            aload 0 /* this */
            aload 5 /* ei */
            invokevirtual android.inputmethodservice.InputMethodService.onExtractingInputChanged:(Landroid/view/inputmethod/EditorInfo;)V
        end local 5 // android.view.inputmethod.EditorInfo ei
        end local 4 // android.view.inputmethod.InputConnection ic
        end local 3 // android.view.inputmethod.ExtractedTextRequest req
        42: .line 2791
      StackMap locals:
      StackMap stack:
            return
        end local 2 // android.inputmethodservice.ExtractEditText eet
        end local 1 // boolean inputChanged
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   43     0          this  Landroid/inputmethodservice/InputMethodService;
            0   43     1  inputChanged  Z
            1   43     2           eet  Landroid/inputmethodservice/ExtractEditText;
            5   42     3           req  Landroid/view/inputmethod/ExtractedTextRequest;
           10   42     4            ic  Landroid/view/inputmethod/InputConnection;
           18   42     5            ei  Landroid/view/inputmethod/EditorInfo;
           22   35     6     inputType  I
      Exception table:
        from    to  target  type
          18    36      36  any
    MethodParameters:
              Name  Flags
      inputChanged  

  protected void onCurrentInputMethodSubtypeChanged(android.view.inputmethod.InputMethodSubtype);
    descriptor: (Landroid/view/inputmethod/InputMethodSubtype;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.InputMethodSubtype newSubtype
         0: .line 2808
            return
        end local 1 // android.view.inputmethod.InputMethodSubtype newSubtype
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/inputmethodservice/InputMethodService;
            0    1     1  newSubtype  Landroid/view/inputmethod/InputMethodSubtype;
    MethodParameters:
            Name  Flags
      newSubtype  

  public int getInputMethodWindowRecommendedHeight();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.inputmethodservice.InputMethodService this
         0: .line 2822
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            invokevirtual android.view.inputmethod.InputMethodManager.getInputMethodWindowVisibleHeight:()I
            ireturn
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/inputmethodservice/InputMethodService;

  public final void exposeContent(android.view.inputmethod.InputContentInfo, android.view.inputmethod.InputConnection);
    descriptor: (Landroid/view/inputmethod/InputContentInfo;Landroid/view/inputmethod/InputConnection;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.inputmethod.InputContentInfo inputContentInfo
        start local 2 // android.view.inputmethod.InputConnection inputConnection
         0: .line 2839
            aload 2 /* inputConnection */
            ifnonnull 2
         1: .line 2840
            return
         2: .line 2842
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            aload 2 /* inputConnection */
            if_acmpeq 4
         3: .line 2843
            return
         4: .line 2845
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mImm:Landroid/view/inputmethod/InputMethodManager;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            aload 1 /* inputContentInfo */
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputEditorInfo:()Landroid/view/inputmethod/EditorInfo;
            invokevirtual android.view.inputmethod.InputMethodManager.exposeContent:(Landroid/os/IBinder;Landroid/view/inputmethod/InputContentInfo;Landroid/view/inputmethod/EditorInfo;)V
         5: .line 2846
            return
        end local 2 // android.view.inputmethod.InputConnection inputConnection
        end local 1 // android.view.inputmethod.InputContentInfo inputContentInfo
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Landroid/inputmethodservice/InputMethodService;
            0    6     1  inputContentInfo  Landroid/view/inputmethod/InputContentInfo;
            0    6     2   inputConnection  Landroid/view/inputmethod/InputConnection;
    MethodParameters:
                  Name  Flags
      inputContentInfo  
      inputConnection   

  private static int mapToImeWindowStatus(boolean);
    descriptor: (Z)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // boolean isInputViewShown
         0: .line 2849
            iconst_1
            iload 0 /* isInputViewShown */
            ifeq 1
            iconst_2
            goto 2
      StackMap locals:
      StackMap stack: int
         1: iconst_0
      StackMap locals: int
      StackMap stack: int int
         2: ior
            ireturn
        end local 0 // boolean isInputViewShown
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0  isInputViewShown  Z
    MethodParameters:
                  Name  Flags
      isInputViewShown  

  protected void dump(java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]);
    descriptor: (Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // java.io.FileDescriptor fd
        start local 2 // java.io.PrintWriter fout
        start local 3 // java.lang.String[] args
         0: .line 2857
            new android.util.PrintWriterPrinter
            dup
            aload 2 /* fout */
            invokespecial android.util.PrintWriterPrinter.<init>:(Ljava/io/PrintWriter;)V
            astore 4 /* p */
        start local 4 // android.util.Printer p
         1: .line 2858
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "Input method service state for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
         2: .line 2859
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mWindowCreated="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowCreated:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         3: .line 2860
            ldc " mWindowAdded="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowAdded:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 2859
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
         5: .line 2861
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mWindowVisible="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowVisible:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         6: .line 2862
            ldc " mWindowWasVisible="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mWindowWasVisible:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         7: .line 2863
            ldc " mInShowWindow="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInShowWindow:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 2861
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
         9: .line 2864
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  Configuration="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        10: .line 2865
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mToken="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mToken:Landroid/os/IBinder;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        11: .line 2866
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mInputBinding="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputBinding:Landroid/view/inputmethod/InputBinding;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        12: .line 2867
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mInputConnection="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputConnection:Landroid/view/inputmethod/InputConnection;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        13: .line 2868
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mStartedInputConnection="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartedInputConnection:Landroid/view/inputmethod/InputConnection;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        14: .line 2869
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mInputStarted="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputStarted:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        15: .line 2870
            ldc " mInputViewStarted="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputViewStarted:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        16: .line 2871
            ldc " mCandidatesViewStarted="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesViewStarted:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        17: .line 2869
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        18: .line 2872
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mStartInputToken="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStartInputToken:Landroid/os/IBinder;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        19: .line 2874
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            ifnull 23
        20: .line 2875
            aload 4 /* p */
            ldc "  mInputEditorInfo:"
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        21: .line 2876
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mInputEditorInfo:Landroid/view/inputmethod/EditorInfo;
            aload 4 /* p */
            ldc "    "
            invokevirtual android.view.inputmethod.EditorInfo.dump:(Landroid/util/Printer;Ljava/lang/String;)V
        22: .line 2877
            goto 24
        23: .line 2878
      StackMap locals: android.util.Printer
      StackMap stack:
            aload 4 /* p */
            ldc "  mInputEditorInfo: null"
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        24: .line 2881
      StackMap locals:
      StackMap stack:
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mShowInputRequested="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputRequested:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        25: .line 2882
            ldc " mLastShowInputRequested="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mLastShowInputRequested:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        26: .line 2883
            ldc " mShowInputFlags=0x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShowInputFlags:I
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        27: .line 2881
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        28: .line 2884
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mCandidatesVisibility="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mCandidatesVisibility:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        29: .line 2885
            ldc " mFullscreenApplied="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mFullscreenApplied:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        30: .line 2886
            ldc " mIsFullscreen="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsFullscreen:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        31: .line 2887
            ldc " mExtractViewHidden="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractViewHidden:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        32: .line 2884
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        33: .line 2889
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            ifnull 43
        34: .line 2890
            aload 4 /* p */
            ldc "  mExtractedText:"
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        35: .line 2891
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "    text="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            getfield android.view.inputmethod.ExtractedText.text:Ljava/lang/CharSequence;
            invokeinterface java.lang.CharSequence.length:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " chars"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        36: .line 2892
            ldc " startOffset="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            getfield android.view.inputmethod.ExtractedText.startOffset:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        37: .line 2891
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        38: .line 2893
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "    selectionStart="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            getfield android.view.inputmethod.ExtractedText.selectionStart:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        39: .line 2894
            ldc " selectionEnd="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            getfield android.view.inputmethod.ExtractedText.selectionEnd:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        40: .line 2895
            ldc " flags=0x"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedText:Landroid/view/inputmethod/ExtractedText;
            getfield android.view.inputmethod.ExtractedText.flags:I
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        41: .line 2893
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        42: .line 2896
            goto 44
        43: .line 2897
      StackMap locals:
      StackMap stack:
            aload 4 /* p */
            ldc "  mExtractedText: null"
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        44: .line 2899
      StackMap locals:
      StackMap stack:
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mExtractedToken="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mExtractedToken:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        45: .line 2900
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  mIsInputViewShown="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mIsInputViewShown:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
        46: .line 2901
            ldc " mStatusIcon="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mStatusIcon:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        47: .line 2900
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        48: .line 2902
            aload 4 /* p */
            ldc "Last computed insets:"
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        49: .line 2903
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc "  contentTopInsets="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.contentTopInsets:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        50: .line 2904
            ldc " visibleTopInsets="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.visibleTopInsets:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        51: .line 2905
            ldc " touchableInsets="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.touchableInsets:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        52: .line 2906
            ldc " touchableRegion="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.touchableRegion:Landroid/graphics/Region;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        53: .line 2903
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        54: .line 2907
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc " mShouldClearInsetOfPreviousIme="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mShouldClearInsetOfPreviousIme:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        55: .line 2908
            aload 4 /* p */
            new java.lang.StringBuilder
            dup
            ldc " mSettingsObserver="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mSettingsObserver:Landroid/inputmethodservice/InputMethodService$SettingsObserver;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface android.util.Printer.println:(Ljava/lang/String;)V
        56: .line 2909
            return
        end local 4 // android.util.Printer p
        end local 3 // java.lang.String[] args
        end local 2 // java.io.PrintWriter fout
        end local 1 // java.io.FileDescriptor fd
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   57     0  this  Landroid/inputmethodservice/InputMethodService;
            0   57     1    fd  Ljava/io/FileDescriptor;
            0   57     2  fout  Ljava/io/PrintWriter;
            0   57     3  args  [Ljava/lang/String;
            1   57     4     p  Landroid/util/Printer;
    MethodParameters:
      Name  Flags
      fd    
      fout  
      args  

  private void lambda$0(android.view.ViewTreeObserver$InternalInsetsInfo);
    descriptor: (Landroid/view/ViewTreeObserver$InternalInsetsInfo;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.ViewTreeObserver$InternalInsetsInfo info
         0: .line 422
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.isExtractViewShown:()Z
            ifeq 6
         1: .line 425
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getWindow:()Landroid/app/Dialog;
            invokevirtual android.app.Dialog.getWindow:()Landroid/view/Window;
            invokevirtual android.view.Window.getDecorView:()Landroid/view/View;
            astore 2 /* decor */
        start local 2 // android.view.View decor
         2: .line 426
            aload 1 /* info */
            getfield android.view.ViewTreeObserver$InternalInsetsInfo.contentInsets:Landroid/graphics/Rect;
            aload 1 /* info */
            getfield android.view.ViewTreeObserver$InternalInsetsInfo.visibleInsets:Landroid/graphics/Rect;
            aload 2 /* decor */
            invokevirtual android.view.View.getHeight:()I
            dup_x1
            putfield android.graphics.Rect.top:I
            putfield android.graphics.Rect.top:I
         3: .line 427
            aload 1 /* info */
            getfield android.view.ViewTreeObserver$InternalInsetsInfo.touchableRegion:Landroid/graphics/Region;
            invokevirtual android.graphics.Region.setEmpty:()V
         4: .line 428
            aload 1 /* info */
            iconst_0
            invokevirtual android.view.ViewTreeObserver$InternalInsetsInfo.setTouchableInsets:(I)V
        end local 2 // android.view.View decor
         5: .line 429
            goto 11
         6: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            invokevirtual android.inputmethodservice.InputMethodService.onComputeInsets:(Landroid/inputmethodservice/InputMethodService$Insets;)V
         7: .line 431
            aload 1 /* info */
            getfield android.view.ViewTreeObserver$InternalInsetsInfo.contentInsets:Landroid/graphics/Rect;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.contentTopInsets:I
            putfield android.graphics.Rect.top:I
         8: .line 432
            aload 1 /* info */
            getfield android.view.ViewTreeObserver$InternalInsetsInfo.visibleInsets:Landroid/graphics/Rect;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.visibleTopInsets:I
            putfield android.graphics.Rect.top:I
         9: .line 433
            aload 1 /* info */
            getfield android.view.ViewTreeObserver$InternalInsetsInfo.touchableRegion:Landroid/graphics/Region;
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.touchableRegion:Landroid/graphics/Region;
            invokevirtual android.graphics.Region.set:(Landroid/graphics/Region;)Z
            pop
        10: .line 434
            aload 1 /* info */
            aload 0 /* this */
            getfield android.inputmethodservice.InputMethodService.mTmpInsets:Landroid/inputmethodservice/InputMethodService$Insets;
            getfield android.inputmethodservice.InputMethodService$Insets.touchableInsets:I
            invokevirtual android.view.ViewTreeObserver$InternalInsetsInfo.setTouchableInsets:(I)V
        11: .line 436
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.view.ViewTreeObserver$InternalInsetsInfo info
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Landroid/inputmethodservice/InputMethodService;
            0   12     1   info  Landroid/view/ViewTreeObserver$InternalInsetsInfo;
            2    5     2  decor  Landroid/view/View;

  private void lambda$1(android.view.View);
    descriptor: (Landroid/view/View;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // android.inputmethodservice.InputMethodService this
        start local 1 // android.view.View v
         0: .line 439
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputEditorInfo:()Landroid/view/inputmethod/EditorInfo;
            astore 2 /* ei */
        start local 2 // android.view.inputmethod.EditorInfo ei
         1: .line 440
            aload 0 /* this */
            invokevirtual android.inputmethodservice.InputMethodService.getCurrentInputConnection:()Landroid/view/inputmethod/InputConnection;
            astore 3 /* ic */
        start local 3 // android.view.inputmethod.InputConnection ic
         2: .line 441
            aload 2 /* ei */
            ifnull 8
            aload 3 /* ic */
            ifnull 8
         3: .line 442
            aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionId:I
            ifeq 6
         4: .line 443
            aload 3 /* ic */
            aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.actionId:I
            invokeinterface android.view.inputmethod.InputConnection.performEditorAction:(I)Z
            pop
         5: .line 444
            goto 8
      StackMap locals: android.view.inputmethod.EditorInfo android.view.inputmethod.InputConnection
      StackMap stack:
         6: aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            sipush 255
            iand
            iconst_1
            if_icmpeq 8
         7: .line 445
            aload 3 /* ic */
            aload 2 /* ei */
            getfield android.view.inputmethod.EditorInfo.imeOptions:I
            sipush 255
            iand
            invokeinterface android.view.inputmethod.InputConnection.performEditorAction:(I)Z
            pop
        end local 3 // android.view.inputmethod.InputConnection ic
        end local 2 // android.view.inputmethod.EditorInfo ei
         8: .line 448
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.view.View v
        end local 0 // android.inputmethodservice.InputMethodService this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Landroid/inputmethodservice/InputMethodService;
            0    9     1     v  Landroid/view/View;
            1    8     2    ei  Landroid/view/inputmethod/EditorInfo;
            2    8     3    ic  Landroid/view/inputmethod/InputConnection;
}
SourceFile: "InputMethodService.java"
NestMembers:
  android.inputmethodservice.InputMethodService$BackDispositionMode  android.inputmethodservice.InputMethodService$InputMethodImpl  android.inputmethodservice.InputMethodService$InputMethodSessionImpl  android.inputmethodservice.InputMethodService$Insets  android.inputmethodservice.InputMethodService$SettingsObserver  android.inputmethodservice.InputMethodService$SettingsObserver$ShowImeWithHardKeyboardType
InnerClasses:
  public abstract AbstractInputMethodImpl = android.inputmethodservice.AbstractInputMethodService$AbstractInputMethodImpl of android.inputmethodservice.AbstractInputMethodService
  public abstract AbstractInputMethodSessionImpl = android.inputmethodservice.AbstractInputMethodService$AbstractInputMethodSessionImpl of android.inputmethodservice.AbstractInputMethodService
  public abstract BackDispositionMode = android.inputmethodservice.InputMethodService$BackDispositionMode of android.inputmethodservice.InputMethodService
  public InputMethodImpl = android.inputmethodservice.InputMethodService$InputMethodImpl of android.inputmethodservice.InputMethodService
  public InputMethodSessionImpl = android.inputmethodservice.InputMethodService$InputMethodSessionImpl of android.inputmethodservice.InputMethodService
  public final Insets = android.inputmethodservice.InputMethodService$Insets of android.inputmethodservice.InputMethodService
  private final SettingsObserver = android.inputmethodservice.InputMethodService$SettingsObserver of android.inputmethodservice.InputMethodService
  public abstract OnClickListener = android.view.View$OnClickListener of android.view.View
  public LayoutParams = android.view.ViewGroup$LayoutParams of android.view.ViewGroup
  public final InternalInsetsInfo = android.view.ViewTreeObserver$InternalInsetsInfo of android.view.ViewTreeObserver
  public abstract OnComputeInternalInsetsListener = android.view.ViewTreeObserver$OnComputeInternalInsetsListener of android.view.ViewTreeObserver
  public BadTokenException = android.view.WindowManager$BadTokenException of android.view.WindowManager
  public LayoutParams = android.view.WindowManager$LayoutParams of android.view.WindowManager
  public LayoutParams = android.widget.FrameLayout$LayoutParams of android.widget.FrameLayout
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles