Loading src/com/android/dialer/list/PhoneFavoriteFragment.java +3 −12 Original line number Original line Diff line number Diff line Loading @@ -447,7 +447,8 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen if (itemViewType == PhoneFavoritesTileAdapter.ViewTypes.TOP) { if (itemViewType == PhoneFavoritesTileAdapter.ViewTypes.TOP) { // This is a tiled row, so save horizontal offsets instead // This is a tiled row, so save horizontal offsets instead saveHorizontalOffsets((ContactTileRow) child, (ArrayList<ContactEntry>) saveHorizontalOffsets((ContactTileRow) child, (ArrayList<ContactEntry>) mAdapter.getItem(position), position); mAdapter.getItem(position), mAdapter.getAdjustedPositionInContactTileAdapter(position)); } } if (DEBUG) { if (DEBUG) { Log.d(TAG, "Saving itemId: " + itemId + " for listview child " + i + " Top: " Log.d(TAG, "Saving itemId: " + itemId + " for listview child " + i + " Top: " Loading Loading @@ -506,7 +507,6 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen int left = child.getLeft(); int left = child.getLeft(); Integer startRow = mItemIdTopMap.get(itemId); Integer startRow = mItemIdTopMap.get(itemId); if (startRow != null) { if (startRow != null) { if (startRow > currentRow) { if (startRow > currentRow) { // Item has shifted upwards to the previous row. // Item has shifted upwards to the previous row. Loading Loading @@ -535,10 +535,6 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen animators.add(ObjectAnimator.ofFloat( animators.add(ObjectAnimator.ofFloat( child, "translationX", delta, 0.0f)); child, "translationX", delta, 0.0f)); } } } else { // In case the last square row is pushed up from the non-square section. animators.add(ObjectAnimator.ofFloat( child, "translationX", left, 0.0f)); } } } } } } Loading Loading @@ -580,7 +576,7 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen // This is a tiled row, so perform horizontal animations instead // This is a tiled row, so perform horizontal animations instead performHorizontalAnimations((ContactTileRow) child, ( performHorizontalAnimations((ContactTileRow) child, ( ArrayList<ContactEntry>) mAdapter.getItem(position), idsInPlace, ArrayList<ContactEntry>) mAdapter.getItem(position), idsInPlace, position); mAdapter.getAdjustedPositionInContactTileAdapter(position)); } } final long itemId = mAdapter.getItemId(position); final long itemId = mAdapter.getItemId(position); Loading Loading @@ -610,11 +606,6 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen } } startTop = top + (i > 0 ? itemHeight : -itemHeight); startTop = top + (i > 0 ? itemHeight : -itemHeight); delta = startTop - top; delta = startTop - top; } else { // In case the first non-square row is pushed down // from the square section. animators.add(ObjectAnimator.ofFloat( child, "alpha", 0.0f, 1.0f)); } } if (DEBUG) { if (DEBUG) { Log.d(TAG, "Found itemId: " + itemId + " for listview child " + i + Log.d(TAG, "Found itemId: " + itemId + " for listview child " + i + Loading src/com/android/dialer/list/PhoneFavoriteMergedAdapter.java +10 −9 Original line number Original line Diff line number Diff line Loading @@ -144,7 +144,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { } } } } // Set position to the position of the actual favorite contact in the favorites adapter // Set position to the position of the actual favorite contact in the favorites adapter position = getAdjustedFavoritePosition(position, callLogAdapterCount); position = getAdjustedPositionInContactTileAdapter(position); return mContactTileAdapter.getItem(position); return mContactTileAdapter.getItem(position); } } Loading Loading @@ -176,7 +176,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { } else if (position < (callLogAdapterCount + mContactTileAdapter.getCount() + } else if (position < (callLogAdapterCount + mContactTileAdapter.getCount() + getTeaserViewCount() + 1)) { getTeaserViewCount() + 1)) { return mContactTileAdapter.getItemId( return mContactTileAdapter.getItemId( getAdjustedFavoritePosition(position, callLogAdapterCount)); getAdjustedPositionInContactTileAdapter(position)); } else { } else { // Default fallback. We don't normally get here. // Default fallback. We don't normally get here. return FAVORITES_MENU_ITEM_ID; return FAVORITES_MENU_ITEM_ID; Loading Loading @@ -216,7 +216,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { return mContactTileAdapter.getViewTypeCount() + 3; return mContactTileAdapter.getViewTypeCount() + 3; } else if (position < getCount()) { } else if (position < getCount()) { return mContactTileAdapter.getItemViewType( return mContactTileAdapter.getItemViewType( getAdjustedFavoritePosition(position, callLogAdapterCount)); getAdjustedPositionInContactTileAdapter(position)); } else { } else { // Catch-all - we shouldn't get here but if we do use the same as the favorites menu. // Catch-all - we shouldn't get here but if we do use the same as the favorites menu. return mContactTileAdapter.getViewTypeCount() + 3; return mContactTileAdapter.getViewTypeCount() + 3; Loading Loading @@ -269,7 +269,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { // Set position to the position of the actual favorite contact in the favorites adapter. // Set position to the position of the actual favorite contact in the favorites adapter. // Adjusts based on the presence of other views, such as the favorites menu. // Adjusts based on the presence of other views, such as the favorites menu. position = getAdjustedFavoritePosition(position, callLogAdapterCount); position = getAdjustedPositionInContactTileAdapter(position); // Favorites section // Favorites section final View view = mContactTileAdapter.getView(position, convertView, parent); final View view = mContactTileAdapter.getView(position, convertView, parent); Loading @@ -296,18 +296,19 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { return mCallLogAdapter.isEnabled(position); return mCallLogAdapter.isEnabled(position); } else { // For favorites section } else { // For favorites section return mContactTileAdapter.isEnabled( return mContactTileAdapter.isEnabled( getAdjustedFavoritePosition(position, callLogAdapterCount)); getAdjustedPositionInContactTileAdapter(position)); } } } } /** /** * Determines the index into the mContactTileAdapter for the current position. * Given the current position in the merged adapter, return the index in the * mContactTileAdapter this position corresponds to. * * * @param position current position in the overall adapter. * @param position current position in the overall (merged) adapter. * @param callLogAdapterCount number of entries in "last calls" list (ie 0 or 1). * @return position in the mContactTileAdapter. * @return position in the mContactTileAdapter. */ */ private int getAdjustedFavoritePosition(int position, int callLogAdapterCount) { public int getAdjustedPositionInContactTileAdapter(int position) { final int callLogAdapterCount = mCallLogAdapter.getCount(); if (position - callLogAdapterCount > TILE_INTERACTION_TEASER_VIEW_POSITION && if (position - callLogAdapterCount > TILE_INTERACTION_TEASER_VIEW_POSITION && mTileInteractionTeaserView.getShouldDisplayInList()) { mTileInteractionTeaserView.getShouldDisplayInList()) { return position - callLogAdapterCount - 2; return position - callLogAdapterCount - 2; Loading Loading
src/com/android/dialer/list/PhoneFavoriteFragment.java +3 −12 Original line number Original line Diff line number Diff line Loading @@ -447,7 +447,8 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen if (itemViewType == PhoneFavoritesTileAdapter.ViewTypes.TOP) { if (itemViewType == PhoneFavoritesTileAdapter.ViewTypes.TOP) { // This is a tiled row, so save horizontal offsets instead // This is a tiled row, so save horizontal offsets instead saveHorizontalOffsets((ContactTileRow) child, (ArrayList<ContactEntry>) saveHorizontalOffsets((ContactTileRow) child, (ArrayList<ContactEntry>) mAdapter.getItem(position), position); mAdapter.getItem(position), mAdapter.getAdjustedPositionInContactTileAdapter(position)); } } if (DEBUG) { if (DEBUG) { Log.d(TAG, "Saving itemId: " + itemId + " for listview child " + i + " Top: " Log.d(TAG, "Saving itemId: " + itemId + " for listview child " + i + " Top: " Loading Loading @@ -506,7 +507,6 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen int left = child.getLeft(); int left = child.getLeft(); Integer startRow = mItemIdTopMap.get(itemId); Integer startRow = mItemIdTopMap.get(itemId); if (startRow != null) { if (startRow != null) { if (startRow > currentRow) { if (startRow > currentRow) { // Item has shifted upwards to the previous row. // Item has shifted upwards to the previous row. Loading Loading @@ -535,10 +535,6 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen animators.add(ObjectAnimator.ofFloat( animators.add(ObjectAnimator.ofFloat( child, "translationX", delta, 0.0f)); child, "translationX", delta, 0.0f)); } } } else { // In case the last square row is pushed up from the non-square section. animators.add(ObjectAnimator.ofFloat( child, "translationX", left, 0.0f)); } } } } } } Loading Loading @@ -580,7 +576,7 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen // This is a tiled row, so perform horizontal animations instead // This is a tiled row, so perform horizontal animations instead performHorizontalAnimations((ContactTileRow) child, ( performHorizontalAnimations((ContactTileRow) child, ( ArrayList<ContactEntry>) mAdapter.getItem(position), idsInPlace, ArrayList<ContactEntry>) mAdapter.getItem(position), idsInPlace, position); mAdapter.getAdjustedPositionInContactTileAdapter(position)); } } final long itemId = mAdapter.getItemId(position); final long itemId = mAdapter.getItemId(position); Loading Loading @@ -610,11 +606,6 @@ public class PhoneFavoriteFragment extends Fragment implements OnItemClickListen } } startTop = top + (i > 0 ? itemHeight : -itemHeight); startTop = top + (i > 0 ? itemHeight : -itemHeight); delta = startTop - top; delta = startTop - top; } else { // In case the first non-square row is pushed down // from the square section. animators.add(ObjectAnimator.ofFloat( child, "alpha", 0.0f, 1.0f)); } } if (DEBUG) { if (DEBUG) { Log.d(TAG, "Found itemId: " + itemId + " for listview child " + i + Log.d(TAG, "Found itemId: " + itemId + " for listview child " + i + Loading
src/com/android/dialer/list/PhoneFavoriteMergedAdapter.java +10 −9 Original line number Original line Diff line number Diff line Loading @@ -144,7 +144,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { } } } } // Set position to the position of the actual favorite contact in the favorites adapter // Set position to the position of the actual favorite contact in the favorites adapter position = getAdjustedFavoritePosition(position, callLogAdapterCount); position = getAdjustedPositionInContactTileAdapter(position); return mContactTileAdapter.getItem(position); return mContactTileAdapter.getItem(position); } } Loading Loading @@ -176,7 +176,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { } else if (position < (callLogAdapterCount + mContactTileAdapter.getCount() + } else if (position < (callLogAdapterCount + mContactTileAdapter.getCount() + getTeaserViewCount() + 1)) { getTeaserViewCount() + 1)) { return mContactTileAdapter.getItemId( return mContactTileAdapter.getItemId( getAdjustedFavoritePosition(position, callLogAdapterCount)); getAdjustedPositionInContactTileAdapter(position)); } else { } else { // Default fallback. We don't normally get here. // Default fallback. We don't normally get here. return FAVORITES_MENU_ITEM_ID; return FAVORITES_MENU_ITEM_ID; Loading Loading @@ -216,7 +216,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { return mContactTileAdapter.getViewTypeCount() + 3; return mContactTileAdapter.getViewTypeCount() + 3; } else if (position < getCount()) { } else if (position < getCount()) { return mContactTileAdapter.getItemViewType( return mContactTileAdapter.getItemViewType( getAdjustedFavoritePosition(position, callLogAdapterCount)); getAdjustedPositionInContactTileAdapter(position)); } else { } else { // Catch-all - we shouldn't get here but if we do use the same as the favorites menu. // Catch-all - we shouldn't get here but if we do use the same as the favorites menu. return mContactTileAdapter.getViewTypeCount() + 3; return mContactTileAdapter.getViewTypeCount() + 3; Loading Loading @@ -269,7 +269,7 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { // Set position to the position of the actual favorite contact in the favorites adapter. // Set position to the position of the actual favorite contact in the favorites adapter. // Adjusts based on the presence of other views, such as the favorites menu. // Adjusts based on the presence of other views, such as the favorites menu. position = getAdjustedFavoritePosition(position, callLogAdapterCount); position = getAdjustedPositionInContactTileAdapter(position); // Favorites section // Favorites section final View view = mContactTileAdapter.getView(position, convertView, parent); final View view = mContactTileAdapter.getView(position, convertView, parent); Loading @@ -296,18 +296,19 @@ public class PhoneFavoriteMergedAdapter extends BaseAdapter { return mCallLogAdapter.isEnabled(position); return mCallLogAdapter.isEnabled(position); } else { // For favorites section } else { // For favorites section return mContactTileAdapter.isEnabled( return mContactTileAdapter.isEnabled( getAdjustedFavoritePosition(position, callLogAdapterCount)); getAdjustedPositionInContactTileAdapter(position)); } } } } /** /** * Determines the index into the mContactTileAdapter for the current position. * Given the current position in the merged adapter, return the index in the * mContactTileAdapter this position corresponds to. * * * @param position current position in the overall adapter. * @param position current position in the overall (merged) adapter. * @param callLogAdapterCount number of entries in "last calls" list (ie 0 or 1). * @return position in the mContactTileAdapter. * @return position in the mContactTileAdapter. */ */ private int getAdjustedFavoritePosition(int position, int callLogAdapterCount) { public int getAdjustedPositionInContactTileAdapter(int position) { final int callLogAdapterCount = mCallLogAdapter.getCount(); if (position - callLogAdapterCount > TILE_INTERACTION_TEASER_VIEW_POSITION && if (position - callLogAdapterCount > TILE_INTERACTION_TEASER_VIEW_POSITION && mTileInteractionTeaserView.getShouldDisplayInList()) { mTileInteractionTeaserView.getShouldDisplayInList()) { return position - callLogAdapterCount - 2; return position - callLogAdapterCount - 2; Loading