diff options
author | Hyunyoung Song <hyunyoungs@google.com> | 2015-04-28 00:13:27 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-04-28 00:13:27 +0000 |
commit | 341220b954699dbf440024cfc2251f08d6fbc39f (patch) | |
tree | 1bd27b658415f8dddae7b21c935a234ca99b6eea /src | |
parent | d23cfce087df09a81e7f06f29615b3b79e2e830c (diff) | |
parent | f17a1c9ad99d46a65de797422fd439382114b348 (diff) | |
download | android_packages_apps_Trebuchet-341220b954699dbf440024cfc2251f08d6fbc39f.tar.gz android_packages_apps_Trebuchet-341220b954699dbf440024cfc2251f08d6fbc39f.tar.bz2 android_packages_apps_Trebuchet-341220b954699dbf440024cfc2251f08d6fbc39f.zip |
Merge "Widget tray alignment according to UX spec - Fixing an issue where widget preview is not loaded do to faulty canceling of loading async task when view is detached from the window." into ub-launcher3-burnaby
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/widget/WidgetCell.java | 19 | ||||
-rw-r--r-- | src/com/android/launcher3/widget/WidgetsListAdapter.java | 11 |
2 files changed, 14 insertions, 16 deletions
diff --git a/src/com/android/launcher3/widget/WidgetCell.java b/src/com/android/launcher3/widget/WidgetCell.java index 0bc7333ec..7c7d982de 100644 --- a/src/com/android/launcher3/widget/WidgetCell.java +++ b/src/com/android/launcher3/widget/WidgetCell.java @@ -48,7 +48,7 @@ public class WidgetCell extends LinearLayout implements OnLayoutChangeListener { private static final String TAG = "WidgetCell"; private static final boolean DEBUG = false; - private static final int FADE_IN_DURATION_MS = 70; + private static final int FADE_IN_DURATION_MS = 90; private int mPresetPreviewSize; private ImageView mWidgetImage; @@ -104,6 +104,8 @@ public class WidgetCell extends LinearLayout implements OnLayoutChangeListener { mWidgetImage.setImageDrawable(null); mWidgetName.setText(null); mWidgetDims.setText(null); + + cancelLoader(false); } /** @@ -140,16 +142,6 @@ public class WidgetCell extends LinearLayout implements OnLayoutChangeListener { mWidgetPreviewLoader = loader; } - @Override - protected void onDetachedFromWindow() { - super.onDetachedFromWindow(); - deletePreview(false); - - if (DEBUG) { - Log.d(TAG, String.format("[tag=%s] onDetachedFromWindow", getTagToString())); - } - } - public int[] getPreviewSize() { int[] maxSize = new int[2]; maxSize[0] = mPresetPreviewSize; @@ -219,10 +211,7 @@ public class WidgetCell extends LinearLayout implements OnLayoutChangeListener { return Math.min(size[0], info.spanX * cellWidth); } - - private void deletePreview(boolean recycleImage) { - mWidgetImage.setImageDrawable(null); - + private void cancelLoader(boolean recycleImage) { if (mActiveRequest != null) { mActiveRequest.cancel(recycleImage); mActiveRequest = null; diff --git a/src/com/android/launcher3/widget/WidgetsListAdapter.java b/src/com/android/launcher3/widget/WidgetsListAdapter.java index f6ab21eb4..a5b2aff1b 100644 --- a/src/com/android/launcher3/widget/WidgetsListAdapter.java +++ b/src/com/android/launcher3/widget/WidgetsListAdapter.java @@ -127,7 +127,6 @@ public class WidgetsListAdapter extends Adapter<WidgetsRowViewHolder> { // Bind the view in the widget horizontal tray region. for (int i=0; i < infoList.size(); i++) { WidgetCell widget = (WidgetCell) row.getChildAt(i); - widget.reset(); if (getWidgetPreviewLoader() == null) { return; } @@ -159,6 +158,16 @@ public class WidgetsListAdapter extends Adapter<WidgetsRowViewHolder> { } @Override + public void onViewRecycled(WidgetsRowViewHolder holder) { + ViewGroup row = ((ViewGroup) holder.getContent().findViewById(R.id.widgets_cell_list)); + + for (int i = 0; i < row.getChildCount(); i++) { + WidgetCell widget = (WidgetCell) row.getChildAt(i); + widget.reset(); + } + } + + @Override public long getItemId(int pos) { return pos; } |