public class android.app.Presentation extends android.app.Dialog
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.app.Presentation
  super_class: android.app.Dialog
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Presentation"

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

  private final android.view.Display mDisplay;
    descriptor: Landroid/view/Display;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.hardware.display.DisplayManager mDisplayManager;
    descriptor: Landroid/hardware/display/DisplayManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.os.IBinder mToken;
    descriptor: Landroid/os/IBinder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.hardware.display.DisplayManager$DisplayListener mDisplayListener;
    descriptor: Landroid/hardware/display/DisplayManager$DisplayListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.os.Handler mHandler;
    descriptor: Landroid/os/Handler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(android.content.Context, android.view.Display);
    descriptor: (Landroid/content/Context;Landroid/view/Display;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.app.Presentation this
        start local 1 // android.content.Context outerContext
        start local 2 // android.view.Display display
         0: .line 168
            aload 0 /* this */
            aload 1 /* outerContext */
            aload 2 /* display */
            iconst_0
            invokespecial android.app.Presentation.<init>:(Landroid/content/Context;Landroid/view/Display;I)V
         1: .line 169
            return
        end local 2 // android.view.Display display
        end local 1 // android.content.Context outerContext
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Landroid/app/Presentation;
            0    2     1  outerContext  Landroid/content/Context;
            0    2     2       display  Landroid/view/Display;
    MethodParameters:
              Name  Flags
      outerContext  
      display       

  public void <init>(android.content.Context, android.view.Display, int);
    descriptor: (Landroid/content/Context;Landroid/view/Display;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // android.app.Presentation this
        start local 1 // android.content.Context outerContext
        start local 2 // android.view.Display display
        start local 3 // int theme
         0: .line 186
            aload 0 /* this */
            aload 1 /* outerContext */
            aload 2 /* display */
            iload 3 /* theme */
            invokestatic android.app.Presentation.createPresentationContext:(Landroid/content/Context;Landroid/view/Display;I)Landroid/content/Context;
            iload 3 /* theme */
            iconst_0
            invokespecial android.app.Dialog.<init>:(Landroid/content/Context;IZ)V
         1: .line 156
            aload 0 /* this */
            new android.os.Binder
            dup
            invokespecial android.os.Binder.<init>:()V
            putfield android.app.Presentation.mToken:Landroid/os/IBinder;
         2: .line 339
            aload 0 /* this */
            new android.app.Presentation$1
            dup
            aload 0 /* this */
            invokespecial android.app.Presentation$1.<init>:(Landroid/app/Presentation;)V
            putfield android.app.Presentation.mDisplayListener:Landroid/hardware/display/DisplayManager$DisplayListener;
         3: .line 359
            aload 0 /* this */
            new android.app.Presentation$2
            dup
            aload 0 /* this */
            invokespecial android.app.Presentation$2.<init>:(Landroid/app/Presentation;)V
            putfield android.app.Presentation.mHandler:Landroid/os/Handler;
         4: .line 188
            aload 0 /* this */
            aload 2 /* display */
            putfield android.app.Presentation.mDisplay:Landroid/view/Display;
         5: .line 189
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual android.app.Presentation.getContext:()Landroid/content/Context;
            ldc "display"
            invokevirtual android.content.Context.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast android.hardware.display.DisplayManager
            putfield android.app.Presentation.mDisplayManager:Landroid/hardware/display/DisplayManager;
         6: .line 191
            aload 0 /* this */
            invokevirtual android.app.Presentation.getWindow:()Landroid/view/Window;
            astore 4 /* w */
        start local 4 // android.view.Window w
         7: .line 192
            aload 4 /* w */
            invokevirtual android.view.Window.getAttributes:()Landroid/view/WindowManager$LayoutParams;
            astore 5 /* attr */
        start local 5 // android.view.WindowManager$LayoutParams attr
         8: .line 193
            aload 5 /* attr */
            aload 0 /* this */
            getfield android.app.Presentation.mToken:Landroid/os/IBinder;
            putfield android.view.WindowManager$LayoutParams.token:Landroid/os/IBinder;
         9: .line 194
            aload 4 /* w */
            aload 5 /* attr */
            invokevirtual android.view.Window.setAttributes:(Landroid/view/WindowManager$LayoutParams;)V
        10: .line 195
            aload 4 /* w */
            bipush 119
            invokevirtual android.view.Window.setGravity:(I)V
        11: .line 196
            aload 4 /* w */
            sipush 2037
            invokevirtual android.view.Window.setType:(I)V
        12: .line 197
            aload 0 /* this */
            iconst_0
            invokevirtual android.app.Presentation.setCanceledOnTouchOutside:(Z)V
        13: .line 198
            return
        end local 5 // android.view.WindowManager$LayoutParams attr
        end local 4 // android.view.Window w
        end local 3 // int theme
        end local 2 // android.view.Display display
        end local 1 // android.content.Context outerContext
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Landroid/app/Presentation;
            0   14     1  outerContext  Landroid/content/Context;
            0   14     2       display  Landroid/view/Display;
            0   14     3         theme  I
            7   14     4             w  Landroid/view/Window;
            8   14     5          attr  Landroid/view/WindowManager$LayoutParams;
    MethodParameters:
              Name  Flags
      outerContext  
      display       
      theme         

  public android.view.Display getDisplay();
    descriptor: ()Landroid/view/Display;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 206
            aload 0 /* this */
            getfield android.app.Presentation.mDisplay:Landroid/view/Display;
            areturn
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/app/Presentation;

  public android.content.res.Resources getResources();
    descriptor: ()Landroid/content/res/Resources;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 217
            aload 0 /* this */
            invokevirtual android.app.Presentation.getContext:()Landroid/content/Context;
            invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
            areturn
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/app/Presentation;

  protected void onStart();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 222
            aload 0 /* this */
            invokespecial android.app.Dialog.onStart:()V
         1: .line 223
            aload 0 /* this */
            getfield android.app.Presentation.mDisplayManager:Landroid/hardware/display/DisplayManager;
            aload 0 /* this */
            getfield android.app.Presentation.mDisplayListener:Landroid/hardware/display/DisplayManager$DisplayListener;
            aload 0 /* this */
            getfield android.app.Presentation.mHandler:Landroid/os/Handler;
            invokevirtual android.hardware.display.DisplayManager.registerDisplayListener:(Landroid/hardware/display/DisplayManager$DisplayListener;Landroid/os/Handler;)V
         2: .line 229
            aload 0 /* this */
            invokevirtual android.app.Presentation.isConfigurationStillValid:()Z
            ifne 5
         3: .line 230
            ldc "Presentation"
            ldc "Presentation is being dismissed because the display metrics have changed since it was created."
            invokestatic android.util.Log.i:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         4: .line 232
            aload 0 /* this */
            getfield android.app.Presentation.mHandler:Landroid/os/Handler;
            iconst_1
            invokevirtual android.os.Handler.sendEmptyMessage:(I)Z
            pop
         5: .line 234
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Landroid/app/Presentation;

  protected void onStop();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 238
            aload 0 /* this */
            getfield android.app.Presentation.mDisplayManager:Landroid/hardware/display/DisplayManager;
            aload 0 /* this */
            getfield android.app.Presentation.mDisplayListener:Landroid/hardware/display/DisplayManager$DisplayListener;
            invokevirtual android.hardware.display.DisplayManager.unregisterDisplayListener:(Landroid/hardware/display/DisplayManager$DisplayListener;)V
         1: .line 239
            aload 0 /* this */
            invokespecial android.app.Dialog.onStop:()V
         2: .line 240
            return
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/app/Presentation;

  public void show();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 249
            aload 0 /* this */
            invokespecial android.app.Dialog.show:()V
         1: .line 250
            return
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/app/Presentation;

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

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

  private void handleDisplayRemoved();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 278
            aload 0 /* this */
            invokevirtual android.app.Presentation.onDisplayRemoved:()V
         1: .line 279
            aload 0 /* this */
            invokevirtual android.app.Presentation.cancel:()V
         2: .line 280
            return
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/app/Presentation;

  private void handleDisplayChanged();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 283
            aload 0 /* this */
            invokevirtual android.app.Presentation.onDisplayChanged:()V
         1: .line 290
            aload 0 /* this */
            invokevirtual android.app.Presentation.isConfigurationStillValid:()Z
            ifne 4
         2: .line 291
            ldc "Presentation"
            ldc "Presentation is being dismissed because the display metrics have changed since it was created."
            invokestatic android.util.Log.i:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         3: .line 293
            aload 0 /* this */
            invokevirtual android.app.Presentation.cancel:()V
         4: .line 295
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Landroid/app/Presentation;

  private boolean isConfigurationStillValid();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.app.Presentation this
         0: .line 298
            new android.util.DisplayMetrics
            dup
            invokespecial android.util.DisplayMetrics.<init>:()V
            astore 1 /* dm */
        start local 1 // android.util.DisplayMetrics dm
         1: .line 299
            aload 0 /* this */
            getfield android.app.Presentation.mDisplay:Landroid/view/Display;
            aload 1 /* dm */
            invokevirtual android.view.Display.getMetrics:(Landroid/util/DisplayMetrics;)V
         2: .line 300
            aload 1 /* dm */
            aload 0 /* this */
            invokevirtual android.app.Presentation.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getDisplayMetrics:()Landroid/util/DisplayMetrics;
            invokevirtual android.util.DisplayMetrics.equalsPhysical:(Landroid/util/DisplayMetrics;)Z
            ireturn
        end local 1 // android.util.DisplayMetrics dm
        end local 0 // android.app.Presentation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/app/Presentation;
            1    3     1    dm  Landroid/util/DisplayMetrics;

  private static android.content.Context createPresentationContext(android.content.Context, android.view.Display, int);
    descriptor: (Landroid/content/Context;Landroid/view/Display;I)Landroid/content/Context;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 316
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
              Name  Flags
      outerContext  
      display       
      theme         
}
SourceFile: "Presentation.java"
NestMembers:
  android.app.Presentation$1  android.app.Presentation$2  android.app.Presentation$3
InnerClasses:
  android.app.Presentation$1
  android.app.Presentation$2
  public abstract DisplayListener = android.hardware.display.DisplayManager$DisplayListener of android.hardware.display.DisplayManager
  public LayoutParams = android.view.WindowManager$LayoutParams of android.view.WindowManager