diff options
-rw-r--r-- | src/com/android/launcher3/AppsCustomizePagedView.java | 10 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherAnimUtils.java | 10 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherProvider.java | 1 | ||||
-rw-r--r-- | update_system_wallpaper_cropper.py | 55 |
4 files changed, 65 insertions, 11 deletions
diff --git a/src/com/android/launcher3/AppsCustomizePagedView.java b/src/com/android/launcher3/AppsCustomizePagedView.java index 9b35bb5ea..0d806bc7f 100644 --- a/src/com/android/launcher3/AppsCustomizePagedView.java +++ b/src/com/android/launcher3/AppsCustomizePagedView.java @@ -935,12 +935,12 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen } public void setContentType(ContentType type) { - int page = getCurrentPage(); - if (mContentType != type) { - page = 0; + // Widgets appear to be cleared every time you leave, always force invalidate for them + if (mContentType != type || type == ContentType.Widgets) { + int page = (mContentType != type) ? 0 : getCurrentPage(); + mContentType = type; + invalidatePageData(page, true); } - mContentType = type; - invalidatePageData(page, true); } public ContentType getContentType() { diff --git a/src/com/android/launcher3/LauncherAnimUtils.java b/src/com/android/launcher3/LauncherAnimUtils.java index 5d4f9c67e..e6c220b2a 100644 --- a/src/com/android/launcher3/LauncherAnimUtils.java +++ b/src/com/android/launcher3/LauncherAnimUtils.java @@ -25,12 +25,13 @@ import android.view.View; import android.view.ViewTreeObserver; import java.util.HashSet; +import java.util.WeakHashMap; public class LauncherAnimUtils { - static HashSet<Animator> sAnimators = new HashSet<Animator>(); + static WeakHashMap<Animator, Object> sAnimators = new WeakHashMap<Animator, Object>(); static Animator.AnimatorListener sEndAnimListener = new Animator.AnimatorListener() { public void onAnimationStart(Animator animation) { - sAnimators.add(animation); + sAnimators.put(animation, null); } public void onAnimationRepeat(Animator animation) { @@ -74,13 +75,12 @@ public class LauncherAnimUtils { } public static void onDestroyActivity() { - HashSet<Animator> animators = new HashSet<Animator>(sAnimators); + HashSet<Animator> animators = new HashSet<Animator>(sAnimators.keySet()); for (Animator a : animators) { if (a.isRunning()) { a.cancel(); - } else { - sAnimators.remove(a); } + sAnimators.remove(a); } } diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index d0f6770d3..e992706de 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -1046,7 +1046,6 @@ public class LauncherProvider extends ContentProvider { // recursively load some more favorites, why not? i += loadFavorites(db, resId); added = false; - mMaxItemId = -1; } else { Log.w(TAG, String.format("Skipping <include workspace=0x%08x>", resId)); } diff --git a/update_system_wallpaper_cropper.py b/update_system_wallpaper_cropper.py new file mode 100644 index 000000000..5d24f6ffe --- /dev/null +++ b/update_system_wallpaper_cropper.py @@ -0,0 +1,55 @@ +# This script is used to push the most up-to-date files from +# Launcher into frameworks' version of the WallpaperCropActivity +# (and supporting files) +# The framework versions have some small modifications that are +# necessary so do this with care +import os +import sys +files = """ +src/android/util/Pools.java +src/com/android/gallery3d/util/IntArray.java +src/com/android/gallery3d/common/Utils.java +src/com/android/gallery3d/exif/ByteBufferInputStream.java +src/com/android/gallery3d/exif/CountedDataInputStream.java +src/com/android/gallery3d/exif/ExifData.java +src/com/android/gallery3d/exif/ExifInterface.java +src/com/android/gallery3d/exif/ExifInvalidFormatException.java +src/com/android/gallery3d/exif/ExifModifier.java +src/com/android/gallery3d/exif/ExifOutputStream.java +src/com/android/gallery3d/exif/ExifParser.java +src/com/android/gallery3d/exif/ExifReader.java +src/com/android/gallery3d/exif/ExifTag.java +src/com/android/gallery3d/exif/IfdData.java +src/com/android/gallery3d/exif/IfdId.java +src/com/android/gallery3d/exif/JpegHeader.java +src/com/android/gallery3d/exif/OrderedDataOutputStream.java +src/com/android/gallery3d/exif/Rational.java +src/com/android/gallery3d/glrenderer/BasicTexture.java +src/com/android/gallery3d/glrenderer/BitmapTexture.java +src/com/android/gallery3d/glrenderer/GLCanvas.java +src/com/android/gallery3d/glrenderer/GLES20Canvas.java +src/com/android/gallery3d/glrenderer/GLES20IdImpl.java +src/com/android/gallery3d/glrenderer/GLId.java +src/com/android/gallery3d/glrenderer/GLPaint.java +src/com/android/gallery3d/glrenderer/RawTexture.java +src/com/android/gallery3d/glrenderer/Texture.java +src/com/android/gallery3d/glrenderer/UploadedTexture.java +src/com/android/photos/BitmapRegionTileSource.java +src/com/android/photos/views/BlockingGLTextureView.java +src/com/android/photos/views/TiledImageRenderer.java +src/com/android/photos/views/TiledImageView.java +src/com/android/gallery3d/common/BitmapUtils.java +src/com/android/launcher3/CropView.java +src/com/android/launcher3/WallpaperCropActivity.java +""" + +if len(sys.argv) != 2: + print "Usage: python update_sytem_wallpaper_cropper.py <framework_dir>" + exit() +framework_dir = sys.argv[1] + "/packages/WallpaperCropper" +for file_path in files.split(): + dir = os.path.dirname(file_path) + dir = dir.replace("launcher3", "wallpapercropper") + cmd = 'cp %s %s/%s' % (file_path, framework_dir, dir) + print cmd + os.system(cmd) |