Disable Set Wallpaper button while loading image

Bug: 12472111

Change-Id: I2a0cba47f31af2416b0dd062929f277fcbf80481
This commit is contained in:
Michael Jurka
2014-01-16 14:58:00 +01:00
parent f3a8e8c0bd
commit 849aff7553
3 changed files with 10 additions and 0 deletions
@@ -20,6 +20,7 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="?android:actionButtonStyle"
android:id="@+id/set_wallpaper_button"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView style="?android:actionBarTabTextStyle"
@@ -75,6 +75,7 @@ public class WallpaperCropActivity extends Activity {
protected CropView mCropView;
protected Uri mUri;
private View mSetWallpaperButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -111,10 +112,12 @@ public class WallpaperCropActivity extends Activity {
cropImageAndSetWallpaper(imageUri, null, finishActivityWhenDone);
}
});
mSetWallpaperButton = findViewById(R.id.set_wallpaper_button);
// Load image in background
final BitmapRegionTileSource.UriBitmapSource bitmapSource =
new BitmapRegionTileSource.UriBitmapSource(this, imageUri, 1024);
mSetWallpaperButton.setVisibility(View.INVISIBLE);
Runnable onLoad = new Runnable() {
public void run() {
if (bitmapSource.getLoadingState() != BitmapSource.State.LOADED) {
@@ -122,6 +125,8 @@ public class WallpaperCropActivity extends Activity {
getString(R.string.wallpaper_load_fail),
Toast.LENGTH_LONG).show();
finish();
} else {
mSetWallpaperButton.setVisibility(View.VISIBLE);
}
}
};
@@ -90,6 +90,7 @@ public class WallpaperPickerActivity extends WallpaperCropActivity {
private static final String DEFAULT_WALLPAPER_THUMBNAIL_FILENAME = "default_thumb2.jpg";
private View mSelectedTile;
private View mSetWallpaperButton;
private boolean mIgnoreNextTap;
private OnClickListener mThumbnailOnClickListener;
@@ -146,11 +147,13 @@ public class WallpaperPickerActivity extends WallpaperCropActivity {
onLoad = null;
} else {
mFirstClick = false;
a.mSetWallpaperButton.setVisibility(View.INVISIBLE);
onLoad = new Runnable() {
public void run() {
if (mBitmapSource != null &&
mBitmapSource.getLoadingState() == BitmapSource.State.LOADED) {
a.selectTile(mView);
a.mSetWallpaperButton.setVisibility(View.VISIBLE);
} else {
ViewGroup parent = (ViewGroup) mView.getParent();
if (parent != null) {
@@ -466,6 +469,7 @@ public class WallpaperPickerActivity extends WallpaperCropActivity {
}
}
});
mSetWallpaperButton = findViewById(R.id.set_wallpaper_button);
// CAB for deleting items
mActionModeCallback = new ActionMode.Callback() {