public class com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask extends android.os.AsyncTask<java.lang.Void, java.lang.Void, java.lang.Boolean>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask
super_class: android.os.AsyncTask
{
android.net.Uri mInUri;
descriptor: Landroid/net/Uri;
flags: (0x0000)
android.content.Context mContext;
descriptor: Landroid/content/Context;
flags: (0x0000)
java.lang.String mInFilePath;
descriptor: Ljava/lang/String;
flags: (0x0000)
byte[] mInImageBytes;
descriptor: [B
flags: (0x0000)
int mInResId;
descriptor: I
flags: (0x0000)
android.graphics.RectF mCropBounds;
descriptor: Landroid/graphics/RectF;
flags: (0x0000)
int mOutWidth;
descriptor: I
flags: (0x0000)
int mOutHeight;
descriptor: I
flags: (0x0000)
int mRotation;
descriptor: I
flags: (0x0000)
java.lang.String mOutputFormat;
descriptor: Ljava/lang/String;
flags: (0x0000)
boolean mSetWallpaper;
descriptor: Z
flags: (0x0000)
boolean mSaveCroppedBitmap;
descriptor: Z
flags: (0x0000)
android.graphics.Bitmap mCroppedBitmap;
descriptor: Landroid/graphics/Bitmap;
flags: (0x0000)
java.lang.Runnable mOnEndRunnable;
descriptor: Ljava/lang/Runnable;
flags: (0x0000)
android.content.res.Resources mResources;
descriptor: Landroid/content/res/Resources;
flags: (0x0000)
com.android.wallpapercropper.WallpaperCropActivity$OnBitmapCroppedHandler mOnBitmapCroppedHandler;
descriptor: Lcom/android/wallpapercropper/WallpaperCropActivity$OnBitmapCroppedHandler;
flags: (0x0000)
boolean mNoCrop;
descriptor: Z
flags: (0x0000)
public void <init>(android.content.Context, java.lang.String, android.graphics.RectF, int, int, int, boolean, boolean, java.lang.Runnable);
descriptor: (Landroid/content/Context;Ljava/lang/String;Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
invokespecial android.os.AsyncTask.<init>:()V
1: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
2: aload 0
iconst_0
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
3: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
4: aload 0
ldc "jpg"
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutputFormat:Ljava/lang/String;
5: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mContext:Landroid/content/Context;
6: aload 0
aload 2
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInFilePath:Ljava/lang/String;
7: aload 0
aload 3
iload 4
8: iload 5
iload 6
iload 7
iload 8
aload 9
9: invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.init:(Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
10: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 11 1 c Landroid/content/Context;
0 11 2 filePath Ljava/lang/String;
0 11 3 cropBounds Landroid/graphics/RectF;
0 11 4 rotation I
0 11 5 outWidth I
0 11 6 outHeight I
0 11 7 setWallpaper Z
0 11 8 saveCroppedBitmap Z
0 11 9 onEndRunnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
c
filePath
cropBounds
rotation
outWidth
outHeight
setWallpaper
saveCroppedBitmap
onEndRunnable
public void <init>(byte[], android.graphics.RectF, int, int, int, boolean, boolean, java.lang.Runnable);
descriptor: ([BLandroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
invokespecial android.os.AsyncTask.<init>:()V
1: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
2: aload 0
iconst_0
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
3: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
4: aload 0
ldc "jpg"
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutputFormat:Ljava/lang/String;
5: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInImageBytes:[B
6: aload 0
aload 2
iload 3
7: iload 4
iload 5
iload 6
iload 7
aload 8
8: invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.init:(Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
9: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 10 1 imageBytes [B
0 10 2 cropBounds Landroid/graphics/RectF;
0 10 3 rotation I
0 10 4 outWidth I
0 10 5 outHeight I
0 10 6 setWallpaper Z
0 10 7 saveCroppedBitmap Z
0 10 8 onEndRunnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
imageBytes
cropBounds
rotation
outWidth
outHeight
setWallpaper
saveCroppedBitmap
onEndRunnable
public void <init>(android.content.Context, android.net.Uri, android.graphics.RectF, int, int, int, boolean, boolean, java.lang.Runnable);
descriptor: (Landroid/content/Context;Landroid/net/Uri;Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
invokespecial android.os.AsyncTask.<init>:()V
1: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
2: aload 0
iconst_0
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
3: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
4: aload 0
ldc "jpg"
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutputFormat:Ljava/lang/String;
5: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mContext:Landroid/content/Context;
6: aload 0
aload 2
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
7: aload 0
aload 3
iload 4
8: iload 5
iload 6
iload 7
iload 8
aload 9
9: invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.init:(Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
10: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 11 1 c Landroid/content/Context;
0 11 2 inUri Landroid/net/Uri;
0 11 3 cropBounds Landroid/graphics/RectF;
0 11 4 rotation I
0 11 5 outWidth I
0 11 6 outHeight I
0 11 7 setWallpaper Z
0 11 8 saveCroppedBitmap Z
0 11 9 onEndRunnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
c
inUri
cropBounds
rotation
outWidth
outHeight
setWallpaper
saveCroppedBitmap
onEndRunnable
public void <init>(android.content.Context, android.content.res.Resources, int, android.graphics.RectF, int, int, int, boolean, boolean, java.lang.Runnable);
descriptor: (Landroid/content/Context;Landroid/content/res/Resources;ILandroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=11, args_size=11
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 0: aload 0
invokespecial android.os.AsyncTask.<init>:()V
1: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
2: aload 0
iconst_0
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
3: aload 0
aconst_null
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
4: aload 0
ldc "jpg"
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutputFormat:Ljava/lang/String;
5: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mContext:Landroid/content/Context;
6: aload 0
iload 3
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
7: aload 0
aload 2
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mResources:Landroid/content/res/Resources;
8: aload 0
aload 4
iload 5
9: iload 6
iload 7
iload 8
iload 9
aload 10
10: invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.init:(Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
11: return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 12 1 c Landroid/content/Context;
0 12 2 res Landroid/content/res/Resources;
0 12 3 inResId I
0 12 4 cropBounds Landroid/graphics/RectF;
0 12 5 rotation I
0 12 6 outWidth I
0 12 7 outHeight I
0 12 8 setWallpaper Z
0 12 9 saveCroppedBitmap Z
0 12 10 onEndRunnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
c
res
inResId
cropBounds
rotation
outWidth
outHeight
setWallpaper
saveCroppedBitmap
onEndRunnable
private void init(android.graphics.RectF, int, int, int, boolean, boolean, java.lang.Runnable);
descriptor: (Landroid/graphics/RectF;IIIZZLjava/lang/Runnable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
1: aload 0
iload 2
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
2: aload 0
iload 3
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutWidth:I
3: aload 0
iload 4
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutHeight:I
4: aload 0
iload 5
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mSetWallpaper:Z
5: aload 0
iload 6
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mSaveCroppedBitmap:Z
6: aload 0
aload 7
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnEndRunnable:Ljava/lang/Runnable;
7: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 8 1 cropBounds Landroid/graphics/RectF;
0 8 2 rotation I
0 8 3 outWidth I
0 8 4 outHeight I
0 8 5 setWallpaper Z
0 8 6 saveCroppedBitmap Z
0 8 7 onEndRunnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
cropBounds
rotation
outWidth
outHeight
setWallpaper
saveCroppedBitmap
onEndRunnable
public void setOnBitmapCropped(com.android.wallpapercropper.WallpaperCropActivity$OnBitmapCroppedHandler);
descriptor: (Lcom/android/wallpapercropper/WallpaperCropActivity$OnBitmapCroppedHandler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnBitmapCroppedHandler:Lcom/android/wallpapercropper/WallpaperCropActivity$OnBitmapCroppedHandler;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 2 1 handler Lcom/android/wallpapercropper/WallpaperCropActivity$OnBitmapCroppedHandler;
MethodParameters:
Name Flags
handler
public void setNoCrop(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mNoCrop:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 2 1 value Z
MethodParameters:
Name Flags
value
public void setOnEndRunnable(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnEndRunnable:Ljava/lang/Runnable;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 2 1 onEndRunnable Ljava/lang/Runnable;
MethodParameters:
Name Flags
onEndRunnable
private java.io.InputStream regenerateInputStream();
descriptor: ()Ljava/io/InputStream;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
ifnonnull 3
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
ifne 3
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInFilePath:Ljava/lang/String;
ifnonnull 3
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInImageBytes:[B
ifnonnull 3
1: ldc "Launcher3.CropActivity"
ldc "cannot read original file, no input URI, resource ID, or image byte array given"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
2: goto 18
3: StackMap locals:
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
ifnull 8
4: new java.io.BufferedInputStream
dup
5: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mContext:Landroid/content/Context;
invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
invokevirtual android.content.ContentResolver.openInputStream:(Landroid/net/Uri;)Ljava/io/InputStream;
6: invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
7: areturn
8: StackMap locals:
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInFilePath:Ljava/lang/String;
ifnull 11
9: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mContext:Landroid/content/Context;
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInFilePath:Ljava/lang/String;
invokevirtual android.content.Context.openFileInput:(Ljava/lang/String;)Ljava/io/FileInputStream;
10: areturn
11: StackMap locals:
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInImageBytes:[B
ifnull 14
12: new java.io.BufferedInputStream
dup
new java.io.ByteArrayInputStream
dup
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInImageBytes:[B
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
13: areturn
14: StackMap locals:
StackMap stack:
new java.io.BufferedInputStream
dup
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mResources:Landroid/content/res/Resources;
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInResId:I
invokevirtual android.content.res.Resources.openRawResource:(I)Ljava/io/InputStream;
invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
15: areturn
16: StackMap locals:
StackMap stack: java.io.FileNotFoundException
astore 1
start local 1 17: ldc "Launcher3.CropActivity"
new java.lang.StringBuilder
dup
ldc "cannot read file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
invokevirtual android.net.Uri.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 1 18: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
17 18 1 e Ljava/io/FileNotFoundException;
Exception table:
from to target type
3 7 16 Class java.io.FileNotFoundException
8 10 16 Class java.io.FileNotFoundException
11 13 16 Class java.io.FileNotFoundException
14 15 16 Class java.io.FileNotFoundException
public android.graphics.Point getImageBounds();
descriptor: ()Landroid/graphics/Point;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.regenerateInputStream:()Ljava/io/InputStream;
astore 1
start local 1 1: aload 1
ifnull 8
2: new android.graphics.BitmapFactory$Options
dup
invokespecial android.graphics.BitmapFactory$Options.<init>:()V
astore 2
start local 2 3: aload 2
iconst_1
putfield android.graphics.BitmapFactory$Options.inJustDecodeBounds:Z
4: aload 1
aconst_null
aload 2
invokestatic android.graphics.BitmapFactory.decodeStream:(Ljava/io/InputStream;Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap;
pop
5: aload 1
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
6: aload 2
getfield android.graphics.BitmapFactory$Options.outWidth:I
ifeq 8
aload 2
getfield android.graphics.BitmapFactory$Options.outHeight:I
ifeq 8
7: new android.graphics.Point
dup
aload 2
getfield android.graphics.BitmapFactory$Options.outWidth:I
aload 2
getfield android.graphics.BitmapFactory$Options.outHeight:I
invokespecial android.graphics.Point.<init>:(II)V
areturn
end local 2 8: StackMap locals: java.io.InputStream
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
1 9 1 is Ljava/io/InputStream;
3 8 2 options Landroid/graphics/BitmapFactory$Options;
public void setCropBounds(android.graphics.RectF);
descriptor: (Landroid/graphics/RectF;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 2 1 cropBounds Landroid/graphics/RectF;
MethodParameters:
Name Flags
cropBounds
public android.graphics.Bitmap getCroppedBitmap();
descriptor: ()Landroid/graphics/Bitmap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCroppedBitmap:Landroid/graphics/Bitmap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
public boolean cropBitmap();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=21, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aconst_null
astore 2
start local 2 2: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mSetWallpaper:Z
ifeq 4
3: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mContext:Landroid/content/Context;
invokevirtual android.content.Context.getApplicationContext:()Landroid/content/Context;
invokestatic android.app.WallpaperManager.getInstance:(Landroid/content/Context;)Landroid/app/WallpaperManager;
astore 2
4: StackMap locals: int android.app.WallpaperManager
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mSetWallpaper:Z
ifeq 16
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mNoCrop:Z
ifeq 16
5: aload 0
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.regenerateInputStream:()Ljava/io/InputStream;
astore 3
start local 3 6: aload 3
ifnull 13
7: aload 2
aload 3
invokevirtual android.app.WallpaperManager.setStream:(Ljava/io/InputStream;)V
8: aload 3
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
end local 3 9: goto 13
StackMap locals:
StackMap stack: java.io.IOException
10: astore 3
start local 3 11: ldc "Launcher3.CropActivity"
ldc "cannot write stream to wallpaper"
aload 3
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
12: iconst_1
istore 1
end local 3 13: StackMap locals:
StackMap stack:
iload 1
ifeq 14
iconst_0
goto 15
StackMap locals:
StackMap stack:
14: iconst_1
StackMap locals:
StackMap stack: int
15: ireturn
16: StackMap locals:
StackMap stack:
new android.graphics.Rect
dup
invokespecial android.graphics.Rect.<init>:()V
astore 3
start local 3 17: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 4
start local 4 18: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 5
start local 5 19: aload 0
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.getImageBounds:()Landroid/graphics/Point;
astore 6
start local 6 20: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
ifle 36
21: aload 4
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
i2f
invokevirtual android.graphics.Matrix.setRotate:(F)V
22: aload 5
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
ineg
i2f
invokevirtual android.graphics.Matrix.setRotate:(F)V
23: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
aload 3
invokevirtual android.graphics.RectF.roundOut:(Landroid/graphics/Rect;)V
24: aload 0
new android.graphics.RectF
dup
aload 3
invokespecial android.graphics.RectF.<init>:(Landroid/graphics/Rect;)V
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
25: aload 6
ifnonnull 29
26: ldc "Launcher3.CropActivity"
ldc "cannot get bounds for image"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
27: iconst_1
istore 1
28: iconst_0
ireturn
29: StackMap locals: com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask int android.app.WallpaperManager android.graphics.Rect android.graphics.Matrix android.graphics.Matrix android.graphics.Point
StackMap stack:
iconst_2
newarray 6
dup
iconst_0
aload 6
getfield android.graphics.Point.x:I
i2f
fastore
dup
iconst_1
aload 6
getfield android.graphics.Point.y:I
i2f
fastore
astore 7
start local 7 30: aload 4
aload 7
invokevirtual android.graphics.Matrix.mapPoints:([F)V
31: aload 7
iconst_0
aload 7
iconst_0
faload
invokestatic java.lang.Math.abs:(F)F
fastore
32: aload 7
iconst_1
aload 7
iconst_1
faload
invokestatic java.lang.Math.abs:(F)F
fastore
33: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
aload 7
iconst_0
faload
fneg
fconst_2
fdiv
aload 7
iconst_1
faload
fneg
fconst_2
fdiv
invokevirtual android.graphics.RectF.offset:(FF)V
34: aload 5
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
invokevirtual android.graphics.Matrix.mapRect:(Landroid/graphics/RectF;)Z
pop
35: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
aload 6
getfield android.graphics.Point.x:I
iconst_2
idiv
i2f
aload 6
getfield android.graphics.Point.y:I
iconst_2
idiv
i2f
invokevirtual android.graphics.RectF.offset:(FF)V
end local 7 36: StackMap locals:
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
aload 3
invokevirtual android.graphics.RectF.roundOut:(Landroid/graphics/Rect;)V
37: aload 3
invokevirtual android.graphics.Rect.width:()I
ifle 38
aload 3
invokevirtual android.graphics.Rect.height:()I
ifgt 41
38: StackMap locals:
StackMap stack:
ldc "Launcher3.CropActivity"
ldc "crop has bad values for full size image"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
39: iconst_1
istore 1
40: iconst_0
ireturn
41: StackMap locals:
StackMap stack:
iconst_1
aload 3
invokevirtual android.graphics.Rect.width:()I
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutWidth:I
idiv
42: aload 3
invokevirtual android.graphics.Rect.height:()I
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutHeight:I
idiv
43: invokestatic java.lang.Math.min:(II)I
invokestatic java.lang.Math.max:(II)I
istore 7
start local 7 44: aconst_null
astore 8
start local 8 45: aconst_null
astore 9
start local 9 46: aload 0
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.regenerateInputStream:()Ljava/io/InputStream;
astore 9
47: aload 9
ifnonnull 53
48: ldc "Launcher3.CropActivity"
new java.lang.StringBuilder
dup
ldc "cannot get input stream for uri="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
invokevirtual android.net.Uri.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
49: iconst_1
istore 1
50: aload 9
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
51: aconst_null
astore 9
52: iconst_0
ireturn
53: StackMap locals: int android.graphics.BitmapRegionDecoder java.io.InputStream
StackMap stack:
aload 9
iconst_0
invokestatic android.graphics.BitmapRegionDecoder.newInstance:(Ljava/io/InputStream;Z)Landroid/graphics/BitmapRegionDecoder;
astore 8
54: aload 9
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
55: goto 64
StackMap locals:
StackMap stack: java.io.IOException
56: astore 10
start local 10 57: ldc "Launcher3.CropActivity"
new java.lang.StringBuilder
dup
ldc "cannot open region decoder for file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
invokevirtual android.net.Uri.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 10
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 10 58: aload 9
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
59: aconst_null
astore 9
goto 66
60: StackMap locals:
StackMap stack: java.lang.Throwable
astore 11
61: aload 9
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
62: aconst_null
astore 9
63: aload 11
athrow
64: StackMap locals:
StackMap stack:
aload 9
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
65: aconst_null
astore 9
66: StackMap locals:
StackMap stack:
aconst_null
astore 10
start local 10 67: aload 8
ifnull 73
68: new android.graphics.BitmapFactory$Options
dup
invokespecial android.graphics.BitmapFactory$Options.<init>:()V
astore 11
start local 11 69: iload 7
iconst_1
if_icmple 71
70: aload 11
iload 7
putfield android.graphics.BitmapFactory$Options.inSampleSize:I
71: StackMap locals: android.graphics.Bitmap android.graphics.BitmapFactory$Options
StackMap stack:
aload 8
aload 3
aload 11
invokevirtual android.graphics.BitmapRegionDecoder.decodeRegion:(Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap;
astore 10
72: aload 8
invokevirtual android.graphics.BitmapRegionDecoder.recycle:()V
end local 11 73: StackMap locals:
StackMap stack:
aload 10
ifnonnull 109
74: aload 0
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.regenerateInputStream:()Ljava/io/InputStream;
astore 9
75: aconst_null
astore 11
start local 11 76: aload 9
ifnull 82
77: new android.graphics.BitmapFactory$Options
dup
invokespecial android.graphics.BitmapFactory$Options.<init>:()V
astore 12
start local 12 78: iload 7
iconst_1
if_icmple 80
79: aload 12
iload 7
putfield android.graphics.BitmapFactory$Options.inSampleSize:I
80: StackMap locals: android.graphics.Bitmap android.graphics.BitmapFactory$Options
StackMap stack:
aload 9
aconst_null
aload 12
invokestatic android.graphics.BitmapFactory.decodeStream:(Ljava/io/InputStream;Landroid/graphics/Rect;Landroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap;
astore 11
81: aload 9
invokestatic com.android.gallery3d.common.Utils.closeSilently:(Ljava/io/Closeable;)V
end local 12 82: StackMap locals:
StackMap stack:
aload 11
ifnull 109
83: aload 6
getfield android.graphics.Point.x:I
aload 11
invokevirtual android.graphics.Bitmap.getWidth:()I
idiv
istore 7
84: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
dup
getfield android.graphics.RectF.left:F
iload 7
i2f
fdiv
putfield android.graphics.RectF.left:F
85: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
dup
getfield android.graphics.RectF.top:F
iload 7
i2f
fdiv
putfield android.graphics.RectF.top:F
86: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
dup
getfield android.graphics.RectF.bottom:F
iload 7
i2f
fdiv
putfield android.graphics.RectF.bottom:F
87: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
dup
getfield android.graphics.RectF.right:F
iload 7
i2f
fdiv
putfield android.graphics.RectF.right:F
88: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCropBounds:Landroid/graphics/RectF;
aload 3
invokevirtual android.graphics.RectF.roundOut:(Landroid/graphics/Rect;)V
89: aload 3
invokevirtual android.graphics.Rect.width:()I
aload 11
invokevirtual android.graphics.Bitmap.getWidth:()I
if_icmple 91
90: aload 3
aload 3
getfield android.graphics.Rect.left:I
aload 11
invokevirtual android.graphics.Bitmap.getWidth:()I
iadd
putfield android.graphics.Rect.right:I
91: StackMap locals:
StackMap stack:
aload 3
getfield android.graphics.Rect.right:I
aload 11
invokevirtual android.graphics.Bitmap.getWidth:()I
if_icmple 97
92: aload 3
getfield android.graphics.Rect.left:I
93: iconst_0
aload 3
getfield android.graphics.Rect.right:I
aload 3
invokevirtual android.graphics.Rect.width:()I
isub
invokestatic java.lang.Math.max:(II)I
94: isub
istore 12
start local 12 95: aload 3
dup
getfield android.graphics.Rect.left:I
iload 12
isub
putfield android.graphics.Rect.left:I
96: aload 3
dup
getfield android.graphics.Rect.right:I
iload 12
isub
putfield android.graphics.Rect.right:I
end local 12 97: StackMap locals:
StackMap stack:
aload 3
invokevirtual android.graphics.Rect.height:()I
aload 11
invokevirtual android.graphics.Bitmap.getHeight:()I
if_icmple 99
98: aload 3
aload 3
getfield android.graphics.Rect.top:I
aload 11
invokevirtual android.graphics.Bitmap.getHeight:()I
iadd
putfield android.graphics.Rect.bottom:I
99: StackMap locals:
StackMap stack:
aload 3
getfield android.graphics.Rect.bottom:I
aload 11
invokevirtual android.graphics.Bitmap.getHeight:()I
if_icmple 105
100: aload 3
getfield android.graphics.Rect.top:I
101: iconst_0
aload 3
getfield android.graphics.Rect.bottom:I
aload 3
invokevirtual android.graphics.Rect.height:()I
isub
invokestatic java.lang.Math.max:(II)I
102: isub
istore 12
start local 12 103: aload 3
dup
getfield android.graphics.Rect.top:I
iload 12
isub
putfield android.graphics.Rect.top:I
104: aload 3
dup
getfield android.graphics.Rect.bottom:I
iload 12
isub
putfield android.graphics.Rect.bottom:I
end local 12 105: StackMap locals:
StackMap stack:
aload 11
aload 3
getfield android.graphics.Rect.left:I
106: aload 3
getfield android.graphics.Rect.top:I
aload 3
invokevirtual android.graphics.Rect.width:()I
107: aload 3
invokevirtual android.graphics.Rect.height:()I
108: invokestatic android.graphics.Bitmap.createBitmap:(Landroid/graphics/Bitmap;IIII)Landroid/graphics/Bitmap;
astore 10
end local 11 109: StackMap locals:
StackMap stack:
aload 10
ifnonnull 113
110: ldc "Launcher3.CropActivity"
new java.lang.StringBuilder
dup
ldc "cannot decode file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mInUri:Landroid/net/Uri;
invokevirtual android.net.Uri.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
111: iconst_1
istore 1
112: iconst_0
ireturn
113: StackMap locals:
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutWidth:I
ifle 114
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutHeight:I
ifgt 115
StackMap locals:
StackMap stack:
114: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
ifle 150
115: StackMap locals:
StackMap stack:
iconst_2
newarray 6
dup
iconst_0
aload 10
invokevirtual android.graphics.Bitmap.getWidth:()I
i2f
fastore
dup
iconst_1
aload 10
invokevirtual android.graphics.Bitmap.getHeight:()I
i2f
fastore
astore 11
start local 11 116: aload 4
aload 11
invokevirtual android.graphics.Matrix.mapPoints:([F)V
117: aload 11
iconst_0
aload 11
iconst_0
faload
invokestatic java.lang.Math.abs:(F)F
fastore
118: aload 11
iconst_1
aload 11
iconst_1
faload
invokestatic java.lang.Math.abs:(F)F
fastore
119: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutWidth:I
ifle 120
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutHeight:I
ifgt 122
120: StackMap locals: float[]
StackMap stack:
aload 0
aload 11
iconst_0
faload
invokestatic java.lang.Math.round:(F)I
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutWidth:I
121: aload 0
aload 11
iconst_1
faload
invokestatic java.lang.Math.round:(F)I
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutHeight:I
122: StackMap locals:
StackMap stack:
new android.graphics.RectF
dup
fconst_0
fconst_0
aload 11
iconst_0
faload
aload 11
iconst_1
faload
invokespecial android.graphics.RectF.<init>:(FFFF)V
astore 12
start local 12 123: new android.graphics.RectF
dup
fconst_0
fconst_0
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutWidth:I
i2f
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutHeight:I
i2f
invokespecial android.graphics.RectF.<init>:(FFFF)V
astore 13
start local 13 124: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 14
start local 14 125: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
ifne 128
126: aload 14
aload 12
aload 13
getstatic android.graphics.Matrix$ScaleToFit.FILL:Landroid/graphics/Matrix$ScaleToFit;
invokevirtual android.graphics.Matrix.setRectToRect:(Landroid/graphics/RectF;Landroid/graphics/RectF;Landroid/graphics/Matrix$ScaleToFit;)Z
pop
127: goto 141
128: StackMap locals: android.graphics.RectF android.graphics.RectF android.graphics.Matrix
StackMap stack:
new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 15
start local 15 129: aload 15
aload 10
invokevirtual android.graphics.Bitmap.getWidth:()I
ineg
i2f
fconst_2
fdiv
aload 10
invokevirtual android.graphics.Bitmap.getHeight:()I
ineg
i2f
fconst_2
fdiv
invokevirtual android.graphics.Matrix.setTranslate:(FF)V
130: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 16
start local 16 131: aload 16
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mRotation:I
i2f
invokevirtual android.graphics.Matrix.setRotate:(F)V
132: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 17
start local 17 133: aload 17
aload 11
iconst_0
faload
fconst_2
fdiv
aload 11
iconst_1
faload
fconst_2
fdiv
invokevirtual android.graphics.Matrix.setTranslate:(FF)V
134: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 18
start local 18 135: aload 18
aload 12
aload 13
getstatic android.graphics.Matrix$ScaleToFit.FILL:Landroid/graphics/Matrix$ScaleToFit;
invokevirtual android.graphics.Matrix.setRectToRect:(Landroid/graphics/RectF;Landroid/graphics/RectF;Landroid/graphics/Matrix$ScaleToFit;)Z
pop
136: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 19
start local 19 137: aload 19
aload 16
aload 15
invokevirtual android.graphics.Matrix.setConcat:(Landroid/graphics/Matrix;Landroid/graphics/Matrix;)Z
pop
138: new android.graphics.Matrix
dup
invokespecial android.graphics.Matrix.<init>:()V
astore 20
start local 20 139: aload 20
aload 18
aload 17
invokevirtual android.graphics.Matrix.setConcat:(Landroid/graphics/Matrix;Landroid/graphics/Matrix;)Z
pop
140: aload 14
aload 20
aload 19
invokevirtual android.graphics.Matrix.setConcat:(Landroid/graphics/Matrix;Landroid/graphics/Matrix;)Z
pop
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 141: StackMap locals:
StackMap stack:
aload 13
invokevirtual android.graphics.RectF.width:()F
f2i
142: aload 13
invokevirtual android.graphics.RectF.height:()F
f2i
getstatic android.graphics.Bitmap$Config.ARGB_8888:Landroid/graphics/Bitmap$Config;
143: invokestatic android.graphics.Bitmap.createBitmap:(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
astore 15
start local 15 144: aload 15
ifnull 150
145: new android.graphics.Canvas
dup
aload 15
invokespecial android.graphics.Canvas.<init>:(Landroid/graphics/Bitmap;)V
astore 16
start local 16 146: new android.graphics.Paint
dup
invokespecial android.graphics.Paint.<init>:()V
astore 17
start local 17 147: aload 17
iconst_1
invokevirtual android.graphics.Paint.setFilterBitmap:(Z)V
148: aload 16
aload 10
aload 14
aload 17
invokevirtual android.graphics.Canvas.drawBitmap:(Landroid/graphics/Bitmap;Landroid/graphics/Matrix;Landroid/graphics/Paint;)V
149: aload 15
astore 10
end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 150: StackMap locals: com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask int android.app.WallpaperManager android.graphics.Rect android.graphics.Matrix android.graphics.Matrix android.graphics.Point int android.graphics.BitmapRegionDecoder java.io.InputStream android.graphics.Bitmap
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mSaveCroppedBitmap:Z
ifeq 152
151: aload 0
aload 10
putfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mCroppedBitmap:Landroid/graphics/Bitmap;
152: StackMap locals:
StackMap stack:
aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOutputFormat:Ljava/lang/String;
invokestatic com.android.wallpapercropper.WallpaperCropActivity.getFileExtension:(Ljava/lang/String;)Ljava/lang/String;
invokestatic com.android.wallpapercropper.WallpaperCropActivity.convertExtensionToCompressFormat:(Ljava/lang/String;)Landroid/graphics/Bitmap$CompressFormat;
153: astore 11
start local 11 154: new java.io.ByteArrayOutputStream
dup
sipush 2048
invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
astore 12
start local 12 155: aload 10
aload 11
bipush 90
aload 12
invokevirtual android.graphics.Bitmap.compress:(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
ifeq 166
156: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mSetWallpaper:Z
ifeq 168
aload 2
ifnull 168
157: aload 12
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
astore 13
start local 13 158: aload 2
new java.io.ByteArrayInputStream
dup
aload 13
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
invokevirtual android.app.WallpaperManager.setStream:(Ljava/io/InputStream;)V
159: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnBitmapCroppedHandler:Lcom/android/wallpapercropper/WallpaperCropActivity$OnBitmapCroppedHandler;
ifnull 168
160: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnBitmapCroppedHandler:Lcom/android/wallpapercropper/WallpaperCropActivity$OnBitmapCroppedHandler;
aload 13
invokeinterface com.android.wallpapercropper.WallpaperCropActivity$OnBitmapCroppedHandler.onBitmapCropped:([B)V
end local 13 161: goto 168
StackMap locals: com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask int android.app.WallpaperManager android.graphics.Rect android.graphics.Matrix android.graphics.Matrix android.graphics.Point int android.graphics.BitmapRegionDecoder java.io.InputStream android.graphics.Bitmap android.graphics.Bitmap$CompressFormat java.io.ByteArrayOutputStream
StackMap stack: java.io.IOException
162: astore 13
start local 13 163: ldc "Launcher3.CropActivity"
ldc "cannot write stream to wallpaper"
aload 13
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
164: iconst_1
istore 1
end local 13 165: goto 168
166: StackMap locals:
StackMap stack:
ldc "Launcher3.CropActivity"
ldc "cannot compress bitmap"
invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
167: iconst_1
istore 1
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 168: StackMap locals: com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask int android.app.WallpaperManager
StackMap stack:
iload 1
ifeq 169
iconst_0
goto 170
StackMap locals:
StackMap stack:
169: iconst_1
StackMap locals:
StackMap stack: int
170: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 171 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
1 171 1 failure Z
2 171 2 wallpaperManager Landroid/app/WallpaperManager;
6 9 3 is Ljava/io/InputStream;
11 13 3 e Ljava/io/IOException;
17 168 3 roundedTrueCrop Landroid/graphics/Rect;
18 168 4 rotateMatrix Landroid/graphics/Matrix;
19 168 5 inverseRotateMatrix Landroid/graphics/Matrix;
20 168 6 bounds Landroid/graphics/Point;
30 36 7 rotatedBounds [F
44 168 7 scaleDownSampleSize I
45 168 8 decoder Landroid/graphics/BitmapRegionDecoder;
46 168 9 is Ljava/io/InputStream;
57 58 10 e Ljava/io/IOException;
67 168 10 crop Landroid/graphics/Bitmap;
69 73 11 options Landroid/graphics/BitmapFactory$Options;
76 109 11 fullSize Landroid/graphics/Bitmap;
78 82 12 options Landroid/graphics/BitmapFactory$Options;
95 97 12 adjustment I
103 105 12 adjustment I
116 150 11 dimsAfter [F
123 150 12 cropRect Landroid/graphics/RectF;
124 150 13 returnRect Landroid/graphics/RectF;
125 150 14 m Landroid/graphics/Matrix;
129 141 15 m1 Landroid/graphics/Matrix;
131 141 16 m2 Landroid/graphics/Matrix;
133 141 17 m3 Landroid/graphics/Matrix;
135 141 18 m4 Landroid/graphics/Matrix;
137 141 19 c1 Landroid/graphics/Matrix;
139 141 20 c2 Landroid/graphics/Matrix;
144 150 15 tmp Landroid/graphics/Bitmap;
146 150 16 c Landroid/graphics/Canvas;
147 150 17 p Landroid/graphics/Paint;
154 168 11 cf Landroid/graphics/Bitmap$CompressFormat;
155 168 12 tmpOut Ljava/io/ByteArrayOutputStream;
158 161 13 outByteArray [B
163 165 13 e Ljava/io/IOException;
Exception table:
from to target type
5 9 10 Class java.io.IOException
46 50 56 Class java.io.IOException
53 55 56 Class java.io.IOException
46 50 60 any
53 58 60 any
157 161 162 Class java.io.IOException
protected java.lang.Boolean doInBackground(java.lang.Void[]);
descriptor: ([Ljava/lang/Void;)Ljava/lang/Boolean;
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.cropBitmap:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 1 1 params [Ljava/lang/Void;
MethodParameters:
Name Flags
params
protected void onPostExecute(java.lang.Boolean);
descriptor: (Ljava/lang/Boolean;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnEndRunnable:Ljava/lang/Runnable;
ifnull 2
1: aload 0
getfield com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.mOnEndRunnable:Ljava/lang/Runnable;
invokeinterface java.lang.Runnable.run:()V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/wallpapercropper/WallpaperCropActivity$BitmapCropTask;
0 3 1 result Ljava/lang/Boolean;
MethodParameters:
Name Flags
result
protected java.lang.Object doInBackground(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x10c4) ACC_PROTECTED, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.Void[]
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.doInBackground:([Ljava/lang/Void;)Ljava/lang/Boolean;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected void onPostExecute(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.Boolean
invokevirtual com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask.onPostExecute:(Ljava/lang/Boolean;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Landroid/os/AsyncTask<Ljava/lang/Void;Ljava/lang/Void;Ljava/lang/Boolean;>;
SourceFile: "WallpaperCropActivity.java"
NestHost: com.android.wallpapercropper.WallpaperCropActivity
InnerClasses:
public final CompressFormat = android.graphics.Bitmap$CompressFormat of android.graphics.Bitmap
public final Config = android.graphics.Bitmap$Config of android.graphics.Bitmap
public Options = android.graphics.BitmapFactory$Options of android.graphics.BitmapFactory
public final ScaleToFit = android.graphics.Matrix$ScaleToFit of android.graphics.Matrix
protected BitmapCropTask = com.android.wallpapercropper.WallpaperCropActivity$BitmapCropTask of com.android.wallpapercropper.WallpaperCropActivity
public abstract OnBitmapCroppedHandler = com.android.wallpapercropper.WallpaperCropActivity$OnBitmapCroppedHandler of com.android.wallpapercropper.WallpaperCropActivity