public final class android.view.WindowManagerGlobal
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: android.view.WindowManagerGlobal
  super_class: java.lang.Object
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "WindowManager"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  private static android.view.WindowManagerGlobal sDefaultWindowManager;
    descriptor: Landroid/view/WindowManagerGlobal;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static android.view.IWindowManager sWindowManagerService;
    descriptor: Landroid/view/IWindowManager;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static android.view.IWindowSession sWindowSession;
    descriptor: Landroid/view/IWindowSession;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final java.lang.Object mLock;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.ArrayList<android.view.View> mViews;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Landroid/view/View;>;

  private final java.util.ArrayList<android.view.ViewRootImpl> mRoots;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Landroid/view/ViewRootImpl;>;

  private final java.util.ArrayList<android.view.WindowManager$LayoutParams> mParams;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Landroid/view/WindowManager$LayoutParams;>;

  private final android.util.ArraySet<android.view.View> mDyingViews;
    descriptor: Landroid/util/ArraySet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Landroid/util/ArraySet<Landroid/view/View;>;

  private java.lang.Runnable mSystemPropertyUpdater;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0002) ACC_PRIVATE

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.view.WindowManagerGlobal this
         0: .line 148
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 138
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
         2: .line 140
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
         3: .line 141
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
         4: .line 142
            aload 0 /* this */
         5: .line 143
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
         6: .line 144
            aload 0 /* this */
            new android.util.ArraySet
            dup
            invokespecial android.util.ArraySet.<init>:()V
            putfield android.view.WindowManagerGlobal.mDyingViews:Landroid/util/ArraySet;
         7: .line 149
            return
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Landroid/view/WindowManagerGlobal;

  public static void initialize();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 152
            invokestatic android.view.WindowManagerGlobal.getWindowManagerService:()Landroid/view/IWindowManager;
            pop
         1: .line 153
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static android.view.WindowManagerGlobal getInstance();
    descriptor: ()Landroid/view/WindowManagerGlobal;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 156
            ldc Landroid/view/WindowManagerGlobal;
            dup
            astore 0
            monitorenter
         1: .line 157
            getstatic android.view.WindowManagerGlobal.sDefaultWindowManager:Landroid/view/WindowManagerGlobal;
            ifnonnull 3
         2: .line 158
            new android.view.WindowManagerGlobal
            dup
            invokespecial android.view.WindowManagerGlobal.<init>:()V
            putstatic android.view.WindowManagerGlobal.sDefaultWindowManager:Landroid/view/WindowManagerGlobal;
         3: .line 160
      StackMap locals: java.lang.Class
      StackMap stack:
            getstatic android.view.WindowManagerGlobal.sDefaultWindowManager:Landroid/view/WindowManagerGlobal;
            aload 0
            monitorexit
         4: areturn
         5: .line 156
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 0
            monitorexit
         6: athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any

  public static android.view.IWindowManager getWindowManagerService();
    descriptor: ()Landroid/view/IWindowManager;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=0
         0: .line 165
            ldc Landroid/view/WindowManagerGlobal;
            dup
            astore 0
            monitorenter
         1: .line 166
            getstatic android.view.WindowManagerGlobal.sWindowManagerService:Landroid/view/IWindowManager;
            ifnonnull 10
         2: .line 168
            ldc "window"
            invokestatic android.os.ServiceManager.getService:(Ljava/lang/String;)Landroid/os/IBinder;
         3: .line 167
            invokestatic android.view.IWindowManager$Stub.asInterface:(Landroid/os/IBinder;)Landroid/view/IWindowManager;
            putstatic android.view.WindowManagerGlobal.sWindowManagerService:Landroid/view/IWindowManager;
         4: .line 170
            getstatic android.view.WindowManagerGlobal.sWindowManagerService:Landroid/view/IWindowManager;
            ifnull 10
         5: .line 172
            getstatic android.view.WindowManagerGlobal.sWindowManagerService:Landroid/view/IWindowManager;
            invokeinterface android.view.IWindowManager.getCurrentAnimatorScale:()F
         6: .line 171
            invokestatic android.animation.ValueAnimator.setDurationScale:(F)V
         7: .line 174
            goto 10
      StackMap locals: java.lang.Class
      StackMap stack: android.os.RemoteException
         8: astore 1 /* e */
        start local 1 // android.os.RemoteException e
         9: .line 175
            aload 1 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // android.os.RemoteException e
        10: .line 178
      StackMap locals:
      StackMap stack:
            getstatic android.view.WindowManagerGlobal.sWindowManagerService:Landroid/view/IWindowManager;
            aload 0
            monitorexit
        11: areturn
        12: .line 165
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 0
            monitorexit
        13: athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            9   10     1     e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           4     7       8  Class android.os.RemoteException
           1    11      12  any
          12    13      12  any

  public static android.view.IWindowSession getWindowSession();
    descriptor: ()Landroid/view/IWindowSession;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=0
         0: .line 183
            ldc Landroid/view/WindowManagerGlobal;
            dup
            astore 0
            monitorenter
         1: .line 184
            getstatic android.view.WindowManagerGlobal.sWindowSession:Landroid/view/IWindowSession;
            ifnonnull 11
         2: .line 186
            invokestatic android.view.inputmethod.InputMethodManager.getInstance:()Landroid/view/inputmethod/InputMethodManager;
            astore 1 /* imm */
        start local 1 // android.view.inputmethod.InputMethodManager imm
         3: .line 187
            invokestatic android.view.WindowManagerGlobal.getWindowManagerService:()Landroid/view/IWindowManager;
            astore 2 /* windowManager */
        start local 2 // android.view.IWindowManager windowManager
         4: .line 188
            aload 2 /* windowManager */
         5: .line 189
            new android.view.WindowManagerGlobal$1
            dup
            invokespecial android.view.WindowManagerGlobal$1.<init>:()V
         6: .line 195
            aload 1 /* imm */
            invokevirtual android.view.inputmethod.InputMethodManager.getClient:()Lcom/android/internal/view/IInputMethodClient;
            aload 1 /* imm */
            invokevirtual android.view.inputmethod.InputMethodManager.getInputContext:()Lcom/android/internal/view/IInputContext;
         7: .line 188
            invokeinterface android.view.IWindowManager.openSession:(Landroid/view/IWindowSessionCallback;Lcom/android/internal/view/IInputMethodClient;Lcom/android/internal/view/IInputContext;)Landroid/view/IWindowSession;
            putstatic android.view.WindowManagerGlobal.sWindowSession:Landroid/view/IWindowSession;
        end local 2 // android.view.IWindowManager windowManager
        end local 1 // android.view.inputmethod.InputMethodManager imm
         8: .line 196
            goto 11
      StackMap locals: java.lang.Class
      StackMap stack: android.os.RemoteException
         9: astore 1 /* e */
        start local 1 // android.os.RemoteException e
        10: .line 197
            aload 1 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // android.os.RemoteException e
        11: .line 200
      StackMap locals:
      StackMap stack:
            getstatic android.view.WindowManagerGlobal.sWindowSession:Landroid/view/IWindowSession;
            aload 0
            monitorexit
        12: areturn
        13: .line 183
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 0
            monitorexit
        14: athrow
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            3    8     1            imm  Landroid/view/inputmethod/InputMethodManager;
            4    8     2  windowManager  Landroid/view/IWindowManager;
           10   11     1              e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           2     8       9  Class android.os.RemoteException
           1    12      13  any
          13    14      13  any

  public static android.view.IWindowSession peekWindowSession();
    descriptor: ()Landroid/view/IWindowSession;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 205
            ldc Landroid/view/WindowManagerGlobal;
            dup
            astore 0
            monitorenter
         1: .line 206
            getstatic android.view.WindowManagerGlobal.sWindowSession:Landroid/view/IWindowSession;
            aload 0
            monitorexit
         2: areturn
         3: .line 205
      StackMap locals: java.lang.Class
      StackMap stack: java.lang.Throwable
            aload 0
            monitorexit
         4: athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  public java.lang.String[] getViewRootNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // android.view.WindowManagerGlobal this
         0: .line 211
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 212
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 2 /* numRoots */
        start local 2 // int numRoots
         2: .line 213
            iload 2 /* numRoots */
            anewarray java.lang.String
            astore 3 /* mViewRoots */
        start local 3 // java.lang.String[] mViewRoots
         3: .line 214
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 215
      StackMap locals: android.view.WindowManagerGlobal java.lang.Object int java.lang.String[] int
      StackMap stack:
            aload 3 /* mViewRoots */
            iload 4 /* i */
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 4 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            invokestatic android.view.WindowManagerGlobal.getWindowName:(Landroid/view/ViewRootImpl;)Ljava/lang/String;
            aastore
         6: .line 214
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            iload 2 /* numRoots */
            if_icmplt 5
        end local 4 // int i
         8: .line 217
            aload 3 /* mViewRoots */
            aload 1
            monitorexit
         9: areturn
        end local 3 // java.lang.String[] mViewRoots
        end local 2 // int numRoots
        10: .line 211
      StackMap locals: android.view.WindowManagerGlobal java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
        11: athrow
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Landroid/view/WindowManagerGlobal;
            2   10     2    numRoots  I
            3   10     3  mViewRoots  [Ljava/lang/String;
            4    8     4           i  I
      Exception table:
        from    to  target  type
           1     9      10  any
          10    11      10  any

  public java.util.ArrayList<android.view.ViewRootImpl> getRootViews(android.os.IBinder);
    descriptor: (Landroid/os/IBinder;)Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=11, args_size=2
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.os.IBinder token
         0: .line 222
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* views */
        start local 2 // java.util.ArrayList views
         1: .line 223
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         2: .line 224
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* numRoots */
        start local 4 // int numRoots
         3: .line 225
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 26
         5: .line 226
      StackMap locals: android.view.WindowManagerGlobal android.os.IBinder java.util.ArrayList java.lang.Object int int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 5 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.WindowManager$LayoutParams
            astore 6 /* params */
        start local 6 // android.view.WindowManager$LayoutParams params
         6: .line 227
            aload 6 /* params */
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            ifnonnull 8
         7: .line 228
            goto 25
         8: .line 230
      StackMap locals: android.view.WindowManager$LayoutParams
      StackMap stack:
            aload 6 /* params */
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            aload 1 /* token */
            if_acmpeq 24
         9: .line 231
            iconst_0
            istore 7 /* isChild */
        start local 7 // boolean isChild
        10: .line 232
            aload 6 /* params */
            getfield android.view.WindowManager$LayoutParams.type:I
            sipush 1000
            if_icmplt 22
        11: .line 233
            aload 6 /* params */
            getfield android.view.WindowManager$LayoutParams.type:I
            sipush 1999
            if_icmpgt 22
        12: .line 234
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        13: goto 21
        14: .line 235
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            iload 8 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.View
            astore 9 /* viewj */
        start local 9 // android.view.View viewj
        15: .line 236
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 8 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.WindowManager$LayoutParams
            astore 10 /* paramsj */
        start local 10 // android.view.WindowManager$LayoutParams paramsj
        16: .line 237
            aload 6 /* params */
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            aload 9 /* viewj */
            invokevirtual android.view.View.getWindowToken:()Landroid/os/IBinder;
            if_acmpne 20
        17: .line 238
            aload 10 /* paramsj */
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            aload 1 /* token */
            if_acmpne 20
        18: .line 239
            iconst_1
            istore 7 /* isChild */
        19: .line 240
            goto 22
        end local 10 // android.view.WindowManager$LayoutParams paramsj
        end local 9 // android.view.View viewj
        20: .line 234
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        21: iload 8 /* j */
            iload 4 /* numRoots */
            if_icmplt 14
        end local 8 // int j
        22: .line 244
      StackMap locals:
      StackMap stack:
            iload 7 /* isChild */
            ifne 24
        23: .line 245
            goto 25
        end local 7 // boolean isChild
        24: .line 248
      StackMap locals:
      StackMap stack:
            aload 2 /* views */
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 5 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // android.view.WindowManager$LayoutParams params
        25: .line 225
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 5 /* i */
            iload 4 /* numRoots */
            if_icmplt 5
        end local 5 // int i
        end local 4 // int numRoots
        27: .line 223
            aload 3
            monitorexit
        28: goto 31
      StackMap locals: android.view.WindowManagerGlobal android.os.IBinder java.util.ArrayList java.lang.Object
      StackMap stack: java.lang.Throwable
        29: aload 3
            monitorexit
        30: athrow
        31: .line 251
      StackMap locals:
      StackMap stack:
            aload 2 /* views */
            areturn
        end local 2 // java.util.ArrayList views
        end local 1 // android.os.IBinder token
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   32     0      this  Landroid/view/WindowManagerGlobal;
            0   32     1     token  Landroid/os/IBinder;
            1   32     2     views  Ljava/util/ArrayList<Landroid/view/ViewRootImpl;>;
            3   27     4  numRoots  I
            4   27     5         i  I
            6   25     6    params  Landroid/view/WindowManager$LayoutParams;
           10   24     7   isChild  Z
           13   22     8         j  I
           15   20     9     viewj  Landroid/view/View;
           16   20    10   paramsj  Landroid/view/WindowManager$LayoutParams;
      Exception table:
        from    to  target  type
           2    28      29  any
          29    30      29  any
    Signature: (Landroid/os/IBinder;)Ljava/util/ArrayList<Landroid/view/ViewRootImpl;>;
    MethodParameters:
       Name  Flags
      token  

  public android.view.View getWindowView(android.os.IBinder);
    descriptor: (Landroid/os/IBinder;)Landroid/view/View;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.os.IBinder windowToken
         0: .line 255
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 256
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 3 /* numViews */
        start local 3 // int numViews
         2: .line 257
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 258
      StackMap locals: java.lang.Object int int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            iload 4 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.View
            astore 5 /* view */
        start local 5 // android.view.View view
         5: .line 259
            aload 5 /* view */
            invokevirtual android.view.View.getWindowToken:()Landroid/os/IBinder;
            aload 1 /* windowToken */
            if_acmpne 8
         6: .line 260
            aload 5 /* view */
            aload 2
            monitorexit
         7: areturn
        end local 5 // android.view.View view
         8: .line 257
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 3 /* numViews */
            if_icmplt 4
        end local 4 // int i
        end local 3 // int numViews
        10: .line 255
            aload 2
            monitorexit
        11: goto 14
      StackMap locals: android.view.WindowManagerGlobal android.os.IBinder java.lang.Object
      StackMap stack: java.lang.Throwable
        12: aload 2
            monitorexit
        13: athrow
        14: .line 264
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // android.os.IBinder windowToken
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Landroid/view/WindowManagerGlobal;
            0   15     1  windowToken  Landroid/os/IBinder;
            2   10     3     numViews  I
            3   10     4            i  I
            5    8     5         view  Landroid/view/View;
      Exception table:
        from    to  target  type
           1     7      12  any
           8    11      12  any
          12    13      12  any
    MethodParameters:
             Name  Flags
      windowToken  

  public android.view.View getRootView(java.lang.String);
    descriptor: (Ljava/lang/String;)Landroid/view/View;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // java.lang.String name
         0: .line 268
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 269
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         2: goto 7
         3: .line 270
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 3 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 4 /* root */
        start local 4 // android.view.ViewRootImpl root
         4: .line 271
            aload 1 /* name */
            aload 4 /* root */
            invokestatic android.view.WindowManagerGlobal.getWindowName:(Landroid/view/ViewRootImpl;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 4 /* root */
            invokevirtual android.view.ViewRootImpl.getView:()Landroid/view/View;
            aload 2
            monitorexit
         5: areturn
        end local 4 // android.view.ViewRootImpl root
         6: .line 269
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            ifge 3
        end local 3 // int i
         8: .line 268
            aload 2
            monitorexit
         9: goto 12
      StackMap locals: android.view.WindowManagerGlobal java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
        10: aload 2
            monitorexit
        11: athrow
        12: .line 275
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.String name
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Landroid/view/WindowManagerGlobal;
            0   13     1  name  Ljava/lang/String;
            2    8     3     i  I
            4    6     4  root  Landroid/view/ViewRootImpl;
      Exception table:
        from    to  target  type
           1     5      10  any
           6     9      10  any
          10    11      10  any
    MethodParameters:
      Name  Flags
      name  

  public void addView(android.view.View, android.view.ViewGroup$LayoutParams, android.view.Display, android.view.Window);
    descriptor: (Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;Landroid/view/Display;Landroid/view/Window;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=5
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.view.View view
        start local 2 // android.view.ViewGroup$LayoutParams params
        start local 3 // android.view.Display display
        start local 4 // android.view.Window parentWindow
         0: .line 280
            aload 1 /* view */
            ifnonnull 2
         1: .line 281
            new java.lang.IllegalArgumentException
            dup
            ldc "view must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 283
      StackMap locals:
      StackMap stack:
            aload 3 /* display */
            ifnonnull 4
         3: .line 284
            new java.lang.IllegalArgumentException
            dup
            ldc "display must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 286
      StackMap locals:
      StackMap stack:
            aload 2 /* params */
            instanceof android.view.WindowManager$LayoutParams
            ifne 6
         5: .line 287
            new java.lang.IllegalArgumentException
            dup
            ldc "Params must be WindowManager.LayoutParams"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 290
      StackMap locals:
      StackMap stack:
            aload 2 /* params */
            checkcast android.view.WindowManager$LayoutParams
            astore 5 /* wparams */
        start local 5 // android.view.WindowManager$LayoutParams wparams
         7: .line 291
            aload 4 /* parentWindow */
            ifnull 10
         8: .line 292
            aload 4 /* parentWindow */
            aload 5 /* wparams */
            invokevirtual android.view.Window.adjustLayoutParamsForSubWindow:(Landroid/view/WindowManager$LayoutParams;)V
         9: .line 293
            goto 16
        10: .line 296
      StackMap locals: android.view.WindowManager$LayoutParams
      StackMap stack:
            aload 1 /* view */
            invokevirtual android.view.View.getContext:()Landroid/content/Context;
            astore 6 /* context */
        start local 6 // android.content.Context context
        11: .line 297
            aload 6 /* context */
            ifnull 16
        12: .line 298
            aload 6 /* context */
            invokevirtual android.content.Context.getApplicationInfo:()Landroid/content/pm/ApplicationInfo;
            getfield android.content.pm.ApplicationInfo.flags:I
        13: .line 299
            ldc 536870912
        14: .line 298
            iand
            ifeq 16
        15: .line 300
            aload 5 /* wparams */
            dup
            getfield android.view.WindowManager$LayoutParams.flags:I
            ldc 16777216
            ior
            putfield android.view.WindowManager$LayoutParams.flags:I
        end local 6 // android.content.Context context
        16: .line 305
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* panelParentView */
        start local 7 // android.view.View panelParentView
        17: .line 307
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 8
            monitorenter
        18: .line 309
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mSystemPropertyUpdater:Ljava/lang/Runnable;
            ifnonnull 21
        19: .line 310
            aload 0 /* this */
            new android.view.WindowManagerGlobal$2
            dup
            aload 0 /* this */
            invokespecial android.view.WindowManagerGlobal$2.<init>:(Landroid/view/WindowManagerGlobal;)V
            putfield android.view.WindowManagerGlobal.mSystemPropertyUpdater:Ljava/lang/Runnable;
        20: .line 319
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mSystemPropertyUpdater:Ljava/lang/Runnable;
            invokestatic android.os.SystemProperties.addChangeCallback:(Ljava/lang/Runnable;)V
        21: .line 322
      StackMap locals: android.view.WindowManagerGlobal android.view.View android.view.ViewGroup$LayoutParams android.view.Display android.view.Window android.view.WindowManager$LayoutParams top android.view.View java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 1 /* view */
            iconst_0
            invokevirtual android.view.WindowManagerGlobal.findViewLocked:(Landroid/view/View;Z)I
            istore 9 /* index */
        start local 9 // int index
        22: .line 323
            iload 9 /* index */
            iflt 29
        23: .line 324
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mDyingViews:Landroid/util/ArraySet;
            aload 1 /* view */
            invokevirtual android.util.ArraySet.contains:(Ljava/lang/Object;)Z
            ifeq 26
        24: .line 326
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 9 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            invokevirtual android.view.ViewRootImpl.doDie:()V
        25: .line 327
            goto 29
        26: .line 328
      StackMap locals: int
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "View "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* view */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        27: .line 329
            ldc " has already been added to the window manager."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 328
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        29: .line 336
      StackMap locals:
      StackMap stack:
            aload 5 /* wparams */
            getfield android.view.WindowManager$LayoutParams.type:I
            sipush 1000
            if_icmplt 38
        30: .line 337
            aload 5 /* wparams */
            getfield android.view.WindowManager$LayoutParams.type:I
            sipush 1999
            if_icmpgt 38
        31: .line 338
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 10 /* count */
        start local 10 // int count
        32: .line 339
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        33: goto 37
        34: .line 340
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 11 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            getfield android.view.ViewRootImpl.mWindow:Landroid/view/ViewRootImpl$W;
            invokevirtual android.view.ViewRootImpl$W.asBinder:()Landroid/os/IBinder;
            aload 5 /* wparams */
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            if_acmpne 36
        35: .line 341
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            iload 11 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.View
            astore 7 /* panelParentView */
        36: .line 339
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 11 /* i */
            iload 10 /* count */
            if_icmplt 34
        end local 11 // int i
        end local 10 // int count
        38: .line 346
      StackMap locals:
      StackMap stack:
            new android.view.ViewRootImpl
            dup
            aload 1 /* view */
            invokevirtual android.view.View.getContext:()Landroid/content/Context;
            aload 3 /* display */
            invokespecial android.view.ViewRootImpl.<init>:(Landroid/content/Context;Landroid/view/Display;)V
            astore 6 /* root */
        start local 6 // android.view.ViewRootImpl root
        39: .line 348
            aload 1 /* view */
            aload 5 /* wparams */
            invokevirtual android.view.View.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V
        40: .line 350
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            aload 1 /* view */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        41: .line 351
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            aload 6 /* root */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        42: .line 352
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            aload 5 /* wparams */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        43: .line 356
            aload 6 /* root */
            aload 1 /* view */
            aload 5 /* wparams */
            aload 7 /* panelParentView */
            invokevirtual android.view.ViewRootImpl.setView:(Landroid/view/View;Landroid/view/WindowManager$LayoutParams;Landroid/view/View;)V
        44: .line 357
            goto 49
      StackMap locals: android.view.WindowManagerGlobal android.view.View android.view.ViewGroup$LayoutParams android.view.Display android.view.Window android.view.WindowManager$LayoutParams android.view.ViewRootImpl android.view.View java.lang.Object int
      StackMap stack: java.lang.RuntimeException
        45: astore 10 /* e */
        start local 10 // java.lang.RuntimeException e
        46: .line 359
            iload 9 /* index */
            iflt 48
        47: .line 360
            aload 0 /* this */
            iload 9 /* index */
            iconst_1
            invokevirtual android.view.WindowManagerGlobal.removeViewLocked:(IZ)V
        48: .line 362
      StackMap locals: java.lang.RuntimeException
      StackMap stack:
            aload 10 /* e */
            athrow
        end local 10 // java.lang.RuntimeException e
        end local 9 // int index
        49: .line 307
      StackMap locals:
      StackMap stack:
            aload 8
            monitorexit
        50: goto 53
        end local 6 // android.view.ViewRootImpl root
      StackMap locals: android.view.WindowManagerGlobal android.view.View android.view.ViewGroup$LayoutParams android.view.Display android.view.Window android.view.WindowManager$LayoutParams top android.view.View java.lang.Object
      StackMap stack: java.lang.Throwable
        51: aload 8
            monitorexit
        52: athrow
        start local 6 // android.view.ViewRootImpl root
        53: .line 365
      StackMap locals: android.view.WindowManagerGlobal android.view.View android.view.ViewGroup$LayoutParams android.view.Display android.view.Window android.view.WindowManager$LayoutParams android.view.ViewRootImpl android.view.View
      StackMap stack:
            return
        end local 7 // android.view.View panelParentView
        end local 6 // android.view.ViewRootImpl root
        end local 5 // android.view.WindowManager$LayoutParams wparams
        end local 4 // android.view.Window parentWindow
        end local 3 // android.view.Display display
        end local 2 // android.view.ViewGroup$LayoutParams params
        end local 1 // android.view.View view
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   54     0             this  Landroid/view/WindowManagerGlobal;
            0   54     1             view  Landroid/view/View;
            0   54     2           params  Landroid/view/ViewGroup$LayoutParams;
            0   54     3          display  Landroid/view/Display;
            0   54     4     parentWindow  Landroid/view/Window;
            7   54     5          wparams  Landroid/view/WindowManager$LayoutParams;
           11   16     6          context  Landroid/content/Context;
           39   51     6             root  Landroid/view/ViewRootImpl;
           53   54     6             root  Landroid/view/ViewRootImpl;
           17   54     7  panelParentView  Landroid/view/View;
           22   49     9            index  I
           32   38    10            count  I
           33   38    11                i  I
           46   49    10                e  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
          43    44      45  Class java.lang.RuntimeException
          18    50      51  any
          51    52      51  any
    MethodParameters:
              Name  Flags
      view          
      params        
      display       
      parentWindow  

  public void updateViewLayout(android.view.View, android.view.ViewGroup$LayoutParams);
    descriptor: (Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.view.View view
        start local 2 // android.view.ViewGroup$LayoutParams params
         0: .line 368
            aload 1 /* view */
            ifnonnull 2
         1: .line 369
            new java.lang.IllegalArgumentException
            dup
            ldc "view must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 371
      StackMap locals:
      StackMap stack:
            aload 2 /* params */
            instanceof android.view.WindowManager$LayoutParams
            ifne 4
         3: .line 372
            new java.lang.IllegalArgumentException
            dup
            ldc "Params must be WindowManager.LayoutParams"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 375
      StackMap locals:
      StackMap stack:
            aload 2 /* params */
            checkcast android.view.WindowManager$LayoutParams
            astore 3 /* wparams */
        start local 3 // android.view.WindowManager$LayoutParams wparams
         5: .line 377
            aload 1 /* view */
            aload 3 /* wparams */
            invokevirtual android.view.View.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V
         6: .line 379
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
         7: .line 380
            aload 0 /* this */
            aload 1 /* view */
            iconst_1
            invokevirtual android.view.WindowManagerGlobal.findViewLocked:(Landroid/view/View;Z)I
            istore 5 /* index */
        start local 5 // int index
         8: .line 381
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 5 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 6 /* root */
        start local 6 // android.view.ViewRootImpl root
         9: .line 382
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 5 /* index */
            invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
            pop
        10: .line 383
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 5 /* index */
            aload 3 /* wparams */
            invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
        11: .line 384
            aload 6 /* root */
            aload 3 /* wparams */
            iconst_0
            invokevirtual android.view.ViewRootImpl.setLayoutParams:(Landroid/view/WindowManager$LayoutParams;Z)V
        end local 6 // android.view.ViewRootImpl root
        end local 5 // int index
        12: .line 379
            aload 4
            monitorexit
        13: goto 16
      StackMap locals: android.view.WindowManagerGlobal android.view.View android.view.ViewGroup$LayoutParams android.view.WindowManager$LayoutParams java.lang.Object
      StackMap stack: java.lang.Throwable
        14: aload 4
            monitorexit
        15: athrow
        16: .line 386
      StackMap locals:
      StackMap stack:
            return
        end local 3 // android.view.WindowManager$LayoutParams wparams
        end local 2 // android.view.ViewGroup$LayoutParams params
        end local 1 // android.view.View view
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0     this  Landroid/view/WindowManagerGlobal;
            0   17     1     view  Landroid/view/View;
            0   17     2   params  Landroid/view/ViewGroup$LayoutParams;
            5   17     3  wparams  Landroid/view/WindowManager$LayoutParams;
            8   12     5    index  I
            9   12     6     root  Landroid/view/ViewRootImpl;
      Exception table:
        from    to  target  type
           7    13      14  any
          14    15      14  any
    MethodParameters:
        Name  Flags
      view    
      params  

  public void removeView(android.view.View, boolean);
    descriptor: (Landroid/view/View;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.view.View view
        start local 2 // boolean immediate
         0: .line 389
            aload 1 /* view */
            ifnonnull 2
         1: .line 390
            new java.lang.IllegalArgumentException
            dup
            ldc "view must not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         3: .line 394
            aload 0 /* this */
            aload 1 /* view */
            iconst_1
            invokevirtual android.view.WindowManagerGlobal.findViewLocked:(Landroid/view/View;Z)I
            istore 4 /* index */
        start local 4 // int index
         4: .line 395
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 4 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            invokevirtual android.view.ViewRootImpl.getView:()Landroid/view/View;
            astore 5 /* curView */
        start local 5 // android.view.View curView
         5: .line 396
            aload 0 /* this */
            iload 4 /* index */
            iload 2 /* immediate */
            invokevirtual android.view.WindowManagerGlobal.removeViewLocked:(IZ)V
         6: .line 397
            aload 5 /* curView */
            aload 1 /* view */
            if_acmpne 9
         7: .line 398
            aload 3
            monitorexit
         8: return
         9: .line 401
      StackMap locals: java.lang.Object int android.view.View
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Calling with view "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* view */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        10: .line 402
            ldc " but the ViewAncestor is attached to "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* curView */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 401
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // android.view.View curView
        end local 4 // int index
        12: .line 393
      StackMap locals: android.view.WindowManagerGlobal android.view.View int java.lang.Object
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
        13: athrow
        end local 2 // boolean immediate
        end local 1 // android.view.View view
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Landroid/view/WindowManagerGlobal;
            0   14     1       view  Landroid/view/View;
            0   14     2  immediate  Z
            4   12     4      index  I
            5   12     5    curView  Landroid/view/View;
      Exception table:
        from    to  target  type
           3     8      12  any
           9    13      12  any
    MethodParameters:
           Name  Flags
      view       
      immediate  

  public void closeAll(android.os.IBinder, java.lang.String, java.lang.String);
    descriptor: (Landroid/os/IBinder;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.os.IBinder token
        start local 2 // java.lang.String who
        start local 3 // java.lang.String what
         0: .line 414
            aload 0 /* this */
            aload 1 /* token */
            aconst_null
            aload 2 /* who */
            aload 3 /* what */
            invokevirtual android.view.WindowManagerGlobal.closeAllExceptView:(Landroid/os/IBinder;Landroid/view/View;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 415
            return
        end local 3 // java.lang.String what
        end local 2 // java.lang.String who
        end local 1 // android.os.IBinder token
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/view/WindowManagerGlobal;
            0    2     1  token  Landroid/os/IBinder;
            0    2     2    who  Ljava/lang/String;
            0    2     3   what  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      token  
      who    
      what   

  public void closeAllExceptView(android.os.IBinder, android.view.View, java.lang.String, java.lang.String);
    descriptor: (Landroid/os/IBinder;Landroid/view/View;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.os.IBinder token
        start local 2 // android.view.View view
        start local 3 // java.lang.String who
        start local 4 // java.lang.String what
         0: .line 427
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
         1: .line 428
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 6 /* count */
        start local 6 // int count
         2: .line 429
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         3: goto 17
         4: .line 430
      StackMap locals: java.lang.Object int int
      StackMap stack:
            aload 2 /* view */
            ifnull 5
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            iload 7 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            aload 2 /* view */
            if_acmpeq 16
         5: .line 431
      StackMap locals:
      StackMap stack:
            aload 1 /* token */
            ifnull 6
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 7 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.WindowManager$LayoutParams
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            aload 1 /* token */
            if_acmpne 16
         6: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 7 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 8 /* root */
        start local 8 // android.view.ViewRootImpl root
         7: .line 434
            aload 3 /* who */
            ifnull 15
         8: .line 435
            new android.view.WindowLeaked
            dup
         9: .line 436
            new java.lang.StringBuilder
            dup
            aload 4 /* what */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* who */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " has leaked window "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 437
            aload 8 /* root */
            invokevirtual android.view.ViewRootImpl.getView:()Landroid/view/View;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " that was originally added here"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 436
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 435
            invokespecial android.view.WindowLeaked.<init>:(Ljava/lang/String;)V
            astore 9 /* leak */
        start local 9 // android.view.WindowLeaked leak
        13: .line 438
            aload 9 /* leak */
            aload 8 /* root */
            invokevirtual android.view.ViewRootImpl.getLocation:()Landroid/view/WindowLeaked;
            invokevirtual android.view.WindowLeaked.getStackTrace:()[Ljava/lang/StackTraceElement;
            invokevirtual android.view.WindowLeaked.setStackTrace:([Ljava/lang/StackTraceElement;)V
        14: .line 439
            ldc "WindowManager"
            ldc ""
            aload 9 /* leak */
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
            pop
        end local 9 // android.view.WindowLeaked leak
        15: .line 442
      StackMap locals: android.view.ViewRootImpl
      StackMap stack:
            aload 0 /* this */
            iload 7 /* i */
            iconst_0
            invokevirtual android.view.WindowManagerGlobal.removeViewLocked:(IZ)V
        end local 8 // android.view.ViewRootImpl root
        16: .line 429
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* i */
            iload 6 /* count */
            if_icmplt 4
        end local 7 // int i
        end local 6 // int count
        18: .line 427
            aload 5
            monitorexit
        19: goto 22
      StackMap locals: android.view.WindowManagerGlobal android.os.IBinder android.view.View java.lang.String java.lang.String java.lang.Object
      StackMap stack: java.lang.Throwable
        20: aload 5
            monitorexit
        21: athrow
        22: .line 446
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.String what
        end local 3 // java.lang.String who
        end local 2 // android.view.View view
        end local 1 // android.os.IBinder token
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0   this  Landroid/view/WindowManagerGlobal;
            0   23     1  token  Landroid/os/IBinder;
            0   23     2   view  Landroid/view/View;
            0   23     3    who  Ljava/lang/String;
            0   23     4   what  Ljava/lang/String;
            2   18     6  count  I
            3   18     7      i  I
            7   16     8   root  Landroid/view/ViewRootImpl;
           13   15     9   leak  Landroid/view/WindowLeaked;
      Exception table:
        from    to  target  type
           1    19      20  any
          20    21      20  any
    MethodParameters:
       Name  Flags
      token  
      view   
      who    
      what   

  private void removeViewLocked(int, boolean);
    descriptor: (IZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // int index
        start local 2 // boolean immediate
         0: .line 449
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 1 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 3 /* root */
        start local 3 // android.view.ViewRootImpl root
         1: .line 450
            aload 3 /* root */
            invokevirtual android.view.ViewRootImpl.getView:()Landroid/view/View;
            astore 4 /* view */
        start local 4 // android.view.View view
         2: .line 452
            aload 4 /* view */
            ifnull 6
         3: .line 453
            invokestatic android.view.inputmethod.InputMethodManager.getInstance:()Landroid/view/inputmethod/InputMethodManager;
            astore 5 /* imm */
        start local 5 // android.view.inputmethod.InputMethodManager imm
         4: .line 454
            aload 5 /* imm */
            ifnull 6
         5: .line 455
            aload 5 /* imm */
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            iload 1 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.View
            invokevirtual android.view.View.getWindowToken:()Landroid/os/IBinder;
            invokevirtual android.view.inputmethod.InputMethodManager.windowDismissed:(Landroid/os/IBinder;)V
        end local 5 // android.view.inputmethod.InputMethodManager imm
         6: .line 458
      StackMap locals: android.view.ViewRootImpl android.view.View
      StackMap stack:
            aload 3 /* root */
            iload 2 /* immediate */
            invokevirtual android.view.ViewRootImpl.die:(Z)Z
            istore 5 /* deferred */
        start local 5 // boolean deferred
         7: .line 459
            aload 4 /* view */
            ifnull 11
         8: .line 460
            aload 4 /* view */
            aconst_null
            invokevirtual android.view.View.assignParent:(Landroid/view/ViewParent;)V
         9: .line 461
            iload 5 /* deferred */
            ifeq 11
        10: .line 462
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mDyingViews:Landroid/util/ArraySet;
            aload 4 /* view */
            invokevirtual android.util.ArraySet.add:(Ljava/lang/Object;)Z
            pop
        11: .line 465
      StackMap locals: int
      StackMap stack:
            return
        end local 5 // boolean deferred
        end local 4 // android.view.View view
        end local 3 // android.view.ViewRootImpl root
        end local 2 // boolean immediate
        end local 1 // int index
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Landroid/view/WindowManagerGlobal;
            0   12     1      index  I
            0   12     2  immediate  Z
            1   12     3       root  Landroid/view/ViewRootImpl;
            2   12     4       view  Landroid/view/View;
            4    6     5        imm  Landroid/view/inputmethod/InputMethodManager;
            7   12     5   deferred  Z
    MethodParameters:
           Name  Flags
      index      
      immediate  

  void doRemoveView(android.view.ViewRootImpl);
    descriptor: (Landroid/view/ViewRootImpl;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.view.ViewRootImpl root
         0: .line 468
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 469
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            aload 1 /* root */
            invokevirtual java.util.ArrayList.indexOf:(Ljava/lang/Object;)I
            istore 3 /* index */
        start local 3 // int index
         2: .line 470
            iload 3 /* index */
            iflt 7
         3: .line 471
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 3 /* index */
            invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
            pop
         4: .line 472
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 3 /* index */
            invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
            pop
         5: .line 473
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            iload 3 /* index */
            invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
            checkcast android.view.View
            astore 4 /* view */
        start local 4 // android.view.View view
         6: .line 474
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mDyingViews:Landroid/util/ArraySet;
            aload 4 /* view */
            invokevirtual android.util.ArraySet.remove:(Ljava/lang/Object;)Z
            pop
        end local 4 // android.view.View view
        end local 3 // int index
         7: .line 468
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 477
      StackMap locals:
      StackMap stack:
            getstatic android.view.ThreadedRenderer.sTrimForeground:Z
            ifeq 13
            invokestatic android.view.ThreadedRenderer.isAvailable:()Z
            ifeq 13
        12: .line 478
            aload 0 /* this */
            invokevirtual android.view.WindowManagerGlobal.doTrimForeground:()V
        13: .line 480
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.view.ViewRootImpl root
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Landroid/view/WindowManagerGlobal;
            0   14     1   root  Landroid/view/ViewRootImpl;
            2    7     3  index  I
            6    7     4   view  Landroid/view/View;
      Exception table:
        from    to  target  type
           1     8       9  any
           9    10       9  any
    MethodParameters:
      Name  Flags
      root  

  private int findViewLocked(android.view.View, boolean);
    descriptor: (Landroid/view/View;Z)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.view.View view
        start local 2 // boolean required
         0: .line 483
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            aload 1 /* view */
            invokevirtual java.util.ArrayList.indexOf:(Ljava/lang/Object;)I
            istore 3 /* index */
        start local 3 // int index
         1: .line 484
            iload 2 /* required */
            ifeq 3
            iload 3 /* index */
            ifge 3
         2: .line 485
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "View="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* view */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " not attached to window manager"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 487
      StackMap locals: int
      StackMap stack:
            iload 3 /* index */
            ireturn
        end local 3 // int index
        end local 2 // boolean required
        end local 1 // android.view.View view
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Landroid/view/WindowManagerGlobal;
            0    4     1      view  Landroid/view/View;
            0    4     2  required  Z
            1    4     3     index  I
    MethodParameters:
          Name  Flags
      view      
      required  

  public static boolean shouldDestroyEglContext(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int trimLevel
         0: .line 493
            iload 0 /* trimLevel */
            bipush 80
            if_icmplt 2
         1: .line 494
            iconst_1
            ireturn
         2: .line 496
      StackMap locals:
      StackMap stack:
            iload 0 /* trimLevel */
            bipush 60
            if_icmplt 5
         3: .line 497
            invokestatic android.app.ActivityManager.isHighEndGfx:()Z
            ifne 5
         4: .line 498
            iconst_1
            ireturn
         5: .line 500
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // int trimLevel
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0  trimLevel  I
    MethodParameters:
           Name  Flags
      trimLevel  

  public void trimMemory(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // int level
         0: .line 504
            invokestatic android.view.ThreadedRenderer.isAvailable:()Z
            ifeq 16
         1: .line 505
            iload 1 /* level */
            invokestatic android.view.WindowManagerGlobal.shouldDestroyEglContext:(I)Z
            ifeq 13
         2: .line 508
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         3: .line 509
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 510
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 3 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            invokevirtual android.view.ViewRootImpl.destroyHardwareResources:()V
         6: .line 509
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            ifge 5
        end local 3 // int i
         8: .line 508
            aload 2
            monitorexit
         9: goto 12
      StackMap locals: android.view.WindowManagerGlobal int java.lang.Object
      StackMap stack: java.lang.Throwable
        10: aload 2
            monitorexit
        11: athrow
        12: .line 514
      StackMap locals:
      StackMap stack:
            bipush 80
            istore 1 /* level */
        13: .line 517
      StackMap locals:
      StackMap stack:
            iload 1 /* level */
            invokestatic android.view.ThreadedRenderer.trimMemory:(I)V
        14: .line 519
            getstatic android.view.ThreadedRenderer.sTrimForeground:Z
            ifeq 16
        15: .line 520
            aload 0 /* this */
            invokevirtual android.view.WindowManagerGlobal.doTrimForeground:()V
        16: .line 523
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int level
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   this  Landroid/view/WindowManagerGlobal;
            0   17     1  level  I
            4    8     3      i  I
      Exception table:
        from    to  target  type
           3     9      10  any
          10    11      10  any
    MethodParameters:
       Name  Flags
      level  

  public static void trimForeground();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 526
            getstatic android.view.ThreadedRenderer.sTrimForeground:Z
            ifeq 3
            invokestatic android.view.ThreadedRenderer.isAvailable:()Z
            ifeq 3
         1: .line 527
            invokestatic android.view.WindowManagerGlobal.getInstance:()Landroid/view/WindowManagerGlobal;
            astore 0 /* wm */
        start local 0 // android.view.WindowManagerGlobal wm
         2: .line 528
            aload 0 /* wm */
            invokevirtual android.view.WindowManagerGlobal.doTrimForeground:()V
        end local 0 // android.view.WindowManagerGlobal wm
         3: .line 530
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            2    3     0    wm  Landroid/view/WindowManagerGlobal;

  private void doTrimForeground();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // android.view.WindowManagerGlobal this
         0: .line 533
            iconst_0
            istore 1 /* hasVisibleWindows */
        start local 1 // boolean hasVisibleWindows
         1: .line 534
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         2: .line 535
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         3: goto 11
         4: .line 536
      StackMap locals: int java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 3 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 4 /* root */
        start local 4 // android.view.ViewRootImpl root
         5: .line 537
            aload 4 /* root */
            getfield android.view.ViewRootImpl.mView:Landroid/view/View;
            ifnull 9
            aload 4 /* root */
            invokevirtual android.view.ViewRootImpl.getHostVisibility:()I
            ifne 9
         6: .line 538
            aload 4 /* root */
            getfield android.view.ViewRootImpl.mAttachInfo:Landroid/view/View$AttachInfo;
            getfield android.view.View$AttachInfo.mThreadedRenderer:Landroid/view/ThreadedRenderer;
            ifnull 9
         7: .line 539
            iconst_1
            istore 1 /* hasVisibleWindows */
         8: .line 540
            goto 10
         9: .line 541
      StackMap locals: android.view.ViewRootImpl
      StackMap stack:
            aload 4 /* root */
            invokevirtual android.view.ViewRootImpl.destroyHardwareResources:()V
        end local 4 // android.view.ViewRootImpl root
        10: .line 535
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
        11: iload 3 /* i */
            ifge 4
        end local 3 // int i
        12: .line 534
            aload 2
            monitorexit
        13: goto 16
      StackMap locals: android.view.WindowManagerGlobal int java.lang.Object
      StackMap stack: java.lang.Throwable
        14: aload 2
            monitorexit
        15: athrow
        16: .line 545
      StackMap locals:
      StackMap stack:
            iload 1 /* hasVisibleWindows */
            ifne 19
        17: .line 547
            bipush 80
        18: .line 546
            invokestatic android.view.ThreadedRenderer.trimMemory:(I)V
        19: .line 549
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean hasVisibleWindows
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   20     0               this  Landroid/view/WindowManagerGlobal;
            1   20     1  hasVisibleWindows  Z
            3   12     3                  i  I
            5   10     4               root  Landroid/view/ViewRootImpl;
      Exception table:
        from    to  target  type
           2    13      14  any
          14    15      14  any

  public void dumpGfxInfo(java.io.FileDescriptor, java.lang.String[]);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=14, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // java.io.FileDescriptor fd
        start local 2 // java.lang.String[] args
         0: .line 552
            new java.io.FileOutputStream
            dup
            aload 1 /* fd */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/FileDescriptor;)V
            astore 3 /* fout */
        start local 3 // java.io.FileOutputStream fout
         1: .line 553
            new com.android.internal.util.FastPrintWriter
            dup
            aload 3 /* fout */
            invokespecial com.android.internal.util.FastPrintWriter.<init>:(Ljava/io/OutputStream;)V
            astore 4 /* pw */
        start local 4 // java.io.PrintWriter pw
         2: .line 555
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 5
            monitorenter
         3: .line 556
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 6 /* count */
        start local 6 // int count
         4: .line 558
            aload 4 /* pw */
            ldc "Profile data in ms:"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         5: .line 560
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         6: goto 15
         7: .line 561
      StackMap locals: android.view.WindowManagerGlobal java.io.FileDescriptor java.lang.String[] java.io.FileOutputStream java.io.PrintWriter java.lang.Object int int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 7 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 8 /* root */
        start local 8 // android.view.ViewRootImpl root
         8: .line 562
            aload 8 /* root */
            invokestatic android.view.WindowManagerGlobal.getWindowName:(Landroid/view/ViewRootImpl;)Ljava/lang/String;
            astore 9 /* name */
        start local 9 // java.lang.String name
         9: .line 563
            aload 4 /* pw */
            ldc "\n\t%s (visibility=%d)"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 9 /* name */
            aastore
            dup
            iconst_1
            aload 8 /* root */
            invokevirtual android.view.ViewRootImpl.getHostVisibility:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        10: .line 566
            aload 8 /* root */
            invokevirtual android.view.ViewRootImpl.getView:()Landroid/view/View;
            getfield android.view.View.mAttachInfo:Landroid/view/View$AttachInfo;
            getfield android.view.View$AttachInfo.mThreadedRenderer:Landroid/view/ThreadedRenderer;
        11: .line 565
            astore 10 /* renderer */
        start local 10 // android.view.ThreadedRenderer renderer
        12: .line 567
            aload 10 /* renderer */
            ifnull 14
        13: .line 568
            aload 10 /* renderer */
            aload 4 /* pw */
            aload 1 /* fd */
            aload 2 /* args */
            invokevirtual android.view.ThreadedRenderer.dumpGfxInfo:(Ljava/io/PrintWriter;Ljava/io/FileDescriptor;[Ljava/lang/String;)V
        end local 10 // android.view.ThreadedRenderer renderer
        end local 9 // java.lang.String name
        end local 8 // android.view.ViewRootImpl root
        14: .line 560
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 7 /* i */
            iload 6 /* count */
            if_icmplt 7
        end local 7 // int i
        16: .line 572
            aload 4 /* pw */
            ldc "\nView hierarchy:\n"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        17: .line 574
            iconst_0
            istore 7 /* viewsCount */
        start local 7 // int viewsCount
        18: .line 575
            iconst_0
            istore 8 /* displayListsSize */
        start local 8 // int displayListsSize
        19: .line 576
            iconst_2
            newarray 10
            astore 9 /* info */
        start local 9 // int[] info
        20: .line 578
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        21: goto 32
        22: .line 579
      StackMap locals: int int[] int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 10 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 11 /* root */
        start local 11 // android.view.ViewRootImpl root
        23: .line 580
            aload 11 /* root */
            aload 9 /* info */
            invokevirtual android.view.ViewRootImpl.dumpGfxInfo:([I)V
        24: .line 582
            aload 11 /* root */
            invokestatic android.view.WindowManagerGlobal.getWindowName:(Landroid/view/ViewRootImpl;)Ljava/lang/String;
            astore 12 /* name */
        start local 12 // java.lang.String name
        25: .line 583
            aload 4 /* pw */
            ldc "  %s\n  %d views, %.2f kB of display lists"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        26: .line 584
            aload 12 /* name */
            aastore
            dup
            iconst_1
            aload 9 /* info */
            iconst_0
            iaload
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 9 /* info */
            iconst_1
            iaload
            i2f
            ldc 1024.0
            fdiv
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            aastore
        27: .line 583
            invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        28: .line 585
            aload 4 /* pw */
            ldc "\n\n"
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        29: .line 587
            iload 7 /* viewsCount */
            aload 9 /* info */
            iconst_0
            iaload
            iadd
            istore 7 /* viewsCount */
        30: .line 588
            iload 8 /* displayListsSize */
            aload 9 /* info */
            iconst_1
            iaload
            iadd
            istore 8 /* displayListsSize */
        end local 12 // java.lang.String name
        end local 11 // android.view.ViewRootImpl root
        31: .line 578
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 10 /* i */
            iload 6 /* count */
            if_icmplt 22
        end local 10 // int i
        33: .line 591
            aload 4 /* pw */
            ldc "\nTotal ViewRootImpl: %d\n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 6 /* count */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        34: .line 592
            aload 4 /* pw */
            ldc "Total Views:        %d\n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 7 /* viewsCount */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        35: .line 593
            aload 4 /* pw */
            ldc "Total DisplayList:  %.2f kB\n\n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 8 /* displayListsSize */
            i2f
            ldc 1024.0
            fdiv
            invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
            aastore
            invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
            pop
        end local 9 // int[] info
        end local 8 // int displayListsSize
        end local 7 // int viewsCount
        end local 6 // int count
        36: .line 555
            aload 5
            monitorexit
        37: goto 43
      StackMap locals: android.view.WindowManagerGlobal java.io.FileDescriptor java.lang.String[] java.io.FileOutputStream java.io.PrintWriter java.lang.Object
      StackMap stack: java.lang.Throwable
        38: aload 5
            monitorexit
        39: athrow
        40: .line 595
      StackMap locals: android.view.WindowManagerGlobal java.io.FileDescriptor java.lang.String[] java.io.FileOutputStream java.io.PrintWriter
      StackMap stack: java.lang.Throwable
            astore 13
        41: .line 596
            aload 4 /* pw */
            invokevirtual java.io.PrintWriter.flush:()V
        42: .line 597
            aload 13
            athrow
        43: .line 596
      StackMap locals:
      StackMap stack:
            aload 4 /* pw */
            invokevirtual java.io.PrintWriter.flush:()V
        44: .line 598
            return
        end local 4 // java.io.PrintWriter pw
        end local 3 // java.io.FileOutputStream fout
        end local 2 // java.lang.String[] args
        end local 1 // java.io.FileDescriptor fd
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   45     0              this  Landroid/view/WindowManagerGlobal;
            0   45     1                fd  Ljava/io/FileDescriptor;
            0   45     2              args  [Ljava/lang/String;
            1   45     3              fout  Ljava/io/FileOutputStream;
            2   45     4                pw  Ljava/io/PrintWriter;
            4   36     6             count  I
            6   16     7                 i  I
            8   14     8              root  Landroid/view/ViewRootImpl;
            9   14     9              name  Ljava/lang/String;
           12   14    10          renderer  Landroid/view/ThreadedRenderer;
           18   36     7        viewsCount  I
           19   36     8  displayListsSize  I
           20   36     9              info  [I
           21   33    10                 i  I
           23   31    11              root  Landroid/view/ViewRootImpl;
           25   31    12              name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           3    37      38  any
          38    39      38  any
           2    40      40  any
    MethodParameters:
      Name  Flags
      fd    
      args  

  private static java.lang.String getWindowName(android.view.ViewRootImpl);
    descriptor: (Landroid/view/ViewRootImpl;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.view.ViewRootImpl root
         0: .line 601
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* root */
            getfield android.view.ViewRootImpl.mWindowAttributes:Landroid/view/WindowManager$LayoutParams;
            invokevirtual android.view.WindowManager$LayoutParams.getTitle:()Ljava/lang/CharSequence;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 602
            aload 0 /* root */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 64
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* root */
            invokevirtual java.lang.Object.hashCode:()I
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 601
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // android.view.ViewRootImpl root
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  root  Landroid/view/ViewRootImpl;
    MethodParameters:
      Name  Flags
      root  

  public void setStoppedState(android.os.IBinder, boolean);
    descriptor: (Landroid/os/IBinder;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.os.IBinder token
        start local 2 // boolean stopped
         0: .line 606
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         1: .line 607
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* count */
        start local 4 // int count
         2: .line 608
            iload 4 /* count */
            iconst_1
            isub
            istore 5 /* i */
        start local 5 // int i
         3: goto 9
         4: .line 609
      StackMap locals: java.lang.Object int int
      StackMap stack:
            aload 1 /* token */
            ifnull 5
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 5 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.WindowManager$LayoutParams
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            aload 1 /* token */
            if_acmpne 8
         5: .line 610
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 5 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 6 /* root */
        start local 6 // android.view.ViewRootImpl root
         6: .line 612
            aload 6 /* root */
            iload 2 /* stopped */
            invokevirtual android.view.ViewRootImpl.setWindowStopped:(Z)V
         7: .line 616
            aload 0 /* this */
            aload 6 /* root */
            getfield android.view.ViewRootImpl.mAttachInfo:Landroid/view/View$AttachInfo;
            getfield android.view.View$AttachInfo.mWindowToken:Landroid/os/IBinder;
            iload 2 /* stopped */
            invokevirtual android.view.WindowManagerGlobal.setStoppedState:(Landroid/os/IBinder;Z)V
        end local 6 // android.view.ViewRootImpl root
         8: .line 608
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            ifge 4
        end local 5 // int i
        end local 4 // int count
        10: .line 606
            aload 3
            monitorexit
        11: goto 14
      StackMap locals: android.view.WindowManagerGlobal android.os.IBinder int java.lang.Object
      StackMap stack: java.lang.Throwable
        12: aload 3
            monitorexit
        13: athrow
        14: .line 620
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean stopped
        end local 1 // android.os.IBinder token
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Landroid/view/WindowManagerGlobal;
            0   15     1    token  Landroid/os/IBinder;
            0   15     2  stopped  Z
            2   10     4    count  I
            3   10     5        i  I
            6    8     6     root  Landroid/view/ViewRootImpl;
      Exception table:
        from    to  target  type
           1    11      12  any
          12    13      12  any
    MethodParameters:
         Name  Flags
      token    
      stopped  

  public void reportNewConfiguration(android.content.res.Configuration);
    descriptor: (Landroid/content/res/Configuration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.content.res.Configuration config
         0: .line 623
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 624
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mViews:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 3 /* count */
        start local 3 // int count
         2: .line 625
            new android.content.res.Configuration
            dup
            aload 1 /* config */
            invokespecial android.content.res.Configuration.<init>:(Landroid/content/res/Configuration;)V
            astore 1 /* config */
         3: .line 626
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 8
         5: .line 627
      StackMap locals: java.lang.Object int int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 4 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            astore 5 /* root */
        start local 5 // android.view.ViewRootImpl root
         6: .line 628
            aload 5 /* root */
            aload 1 /* config */
            invokevirtual android.view.ViewRootImpl.requestUpdateConfiguration:(Landroid/content/res/Configuration;)V
        end local 5 // android.view.ViewRootImpl root
         7: .line 626
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 3 /* count */
            if_icmplt 5
        end local 4 // int i
        end local 3 // int count
         9: .line 623
            aload 2
            monitorexit
        10: goto 13
      StackMap locals: android.view.WindowManagerGlobal android.content.res.Configuration java.lang.Object
      StackMap stack: java.lang.Throwable
        11: aload 2
            monitorexit
        12: athrow
        13: .line 631
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.content.res.Configuration config
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Landroid/view/WindowManagerGlobal;
            0   14     1  config  Landroid/content/res/Configuration;
            2    9     3   count  I
            4    9     4       i  I
            6    7     5    root  Landroid/view/ViewRootImpl;
      Exception table:
        from    to  target  type
           1    10      11  any
          11    12      11  any
    MethodParameters:
        Name  Flags
      config  

  public void changeCanvasOpacity(android.os.IBinder, boolean);
    descriptor: (Landroid/os/IBinder;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // android.view.WindowManagerGlobal this
        start local 1 // android.os.IBinder token
        start local 2 // boolean opaque
         0: .line 635
            aload 1 /* token */
            ifnonnull 2
         1: .line 636
            return
         2: .line 638
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         3: .line 639
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
         4: goto 10
         5: .line 640
      StackMap locals: java.lang.Object int
      StackMap stack:
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mParams:Ljava/util/ArrayList;
            iload 4 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.WindowManager$LayoutParams
            getfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
            aload 1 /* token */
            if_acmpne 9
         6: .line 641
            aload 0 /* this */
            getfield android.view.WindowManagerGlobal.mRoots:Ljava/util/ArrayList;
            iload 4 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast android.view.ViewRootImpl
            iload 2 /* opaque */
            invokevirtual android.view.ViewRootImpl.changeCanvasOpacity:(Z)V
         7: .line 642
            aload 3
            monitorexit
         8: return
         9: .line 639
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            ifge 5
        end local 4 // int i
        11: .line 638
            aload 3
            monitorexit
        12: goto 15
      StackMap locals: android.view.WindowManagerGlobal android.os.IBinder int java.lang.Object
      StackMap stack: java.lang.Throwable
        13: aload 3
            monitorexit
        14: athrow
        15: .line 646
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean opaque
        end local 1 // android.os.IBinder token
        end local 0 // android.view.WindowManagerGlobal this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Landroid/view/WindowManagerGlobal;
            0   16     1   token  Landroid/os/IBinder;
            0   16     2  opaque  Z
            4   11     4       i  I
      Exception table:
        from    to  target  type
           3     8      13  any
           9    12      13  any
          13    14      13  any
    MethodParameters:
        Name  Flags
      token   
      opaque  
}
SourceFile: "WindowManagerGlobal.java"
NestMembers:
  android.view.WindowManagerGlobal$1  android.view.WindowManagerGlobal$2
InnerClasses:
  public abstract Stub = android.view.IWindowManager$Stub of android.view.IWindowManager
  final AttachInfo = android.view.View$AttachInfo of android.view.View
  public LayoutParams = android.view.ViewGroup$LayoutParams of android.view.ViewGroup
  W = android.view.ViewRootImpl$W of android.view.ViewRootImpl
  public LayoutParams = android.view.WindowManager$LayoutParams of android.view.WindowManager
  android.view.WindowManagerGlobal$1
  android.view.WindowManagerGlobal$2