summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Android.mk1
-rw-r--r--analytics/Android.mk7
-rwxr-xr-xanalytics/libGoogleAnalyticsV2.jarbin128178 -> 0 bytes
-rw-r--r--src/com/android/mail/browse/ConversationItemView.java78
-rw-r--r--src/com/android/mail/photomanager/LetterTileProvider.java2
-rw-r--r--src/com/android/mail/photomanager/PhotoManager.java11
-rw-r--r--src/com/android/mail/ui/DividedImageCanvas.java29
-rw-r--r--src/com/android/mail/ui/ImageCanvas.java5
8 files changed, 10 insertions, 123 deletions
diff --git a/Android.mk b/Android.mk
index 3c130fc23..a1c9cb67d 100644
--- a/Android.mk
+++ b/Android.mk
@@ -34,7 +34,6 @@ LOCAL_STATIC_JAVA_LIBRARIES += guava
LOCAL_STATIC_JAVA_LIBRARIES += android-common
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v4
LOCAL_STATIC_JAVA_LIBRARIES += android-support-v13
-LOCAL_STATIC_JAVA_LIBRARIES += unified-email-analytics
LOCAL_SDK_VERSION := current
diff --git a/analytics/Android.mk b/analytics/Android.mk
deleted file mode 100644
index 9752f9567..000000000
--- a/analytics/Android.mk
+++ /dev/null
@@ -1,7 +0,0 @@
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
- unified-email-analytics:libGoogleAnalyticsV2.jar
-
-include $(BUILD_MULTI_PREBUILT)
diff --git a/analytics/libGoogleAnalyticsV2.jar b/analytics/libGoogleAnalyticsV2.jar
deleted file mode 100755
index 48e1b1dc4..000000000
--- a/analytics/libGoogleAnalyticsV2.jar
+++ /dev/null
Binary files differ
diff --git a/src/com/android/mail/browse/ConversationItemView.java b/src/com/android/mail/browse/ConversationItemView.java
index e62a97c90..3800ad34f 100644
--- a/src/com/android/mail/browse/ConversationItemView.java
+++ b/src/com/android/mail/browse/ConversationItemView.java
@@ -84,12 +84,7 @@ import com.android.mail.utils.LogUtils;
import com.android.mail.utils.Utils;
import com.google.common.annotations.VisibleForTesting;
-// TODO(pwestbro): References to non AOSP code should be moved out of UnifiedEmail
-import com.google.analytics.tracking.android.EasyTracker;
-import com.google.analytics.tracking.android.Tracker;
-
import java.util.ArrayList;
-import java.util.List;
public class ConversationItemView extends View implements SwipeableItemView, ToggleableItem,
InvalidateCallback {
@@ -105,16 +100,6 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
private static final String PERF_TAG_CALCULATE_COORDINATES = "CCHV.coordinates";
private static final String LOG_TAG = LogTag.getLogTag();
- // Analytics string values
- private static final String CONV_ITEM_VIEW_CATEGORY = "ConversationItemView";
- private static final String CONTACT_PHOTO_ACTION = "ContactPhoto";
- private static final String NUM_PHOTOS_LABEL = "num_photos";
- private static final String CUSTOM_DIMEN_ACCOUNT_TYPE_GOOGLE_COM = "account_type_google_com";
- private static final String CUSTOM_DIMEN_ACCOUNT_TYPE_NON_GOOGLE_COM
- = "account_type_non_google_com";
- private static final boolean REPORT_ANALYTICS = true;
-
-
// Static bitmaps.
private static Bitmap STAR_OFF;
private static Bitmap STAR_ON;
@@ -148,9 +133,6 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
private static TextPaint sPaint = new TextPaint();
private static TextPaint sFoldersPaint = new TextPaint();
- private static Tracker sConversationItemViewTracker;
-
-
// Backgrounds for different states.
private final SparseArray<Drawable> mBackgrounds = new SparseArray<Drawable>();
@@ -167,9 +149,6 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
/** Whether we are on a tablet device or not */
private final boolean mTabletDevice;
- /** Whether we have reported analytics for this view */
- private boolean mReportedStats = false;
-
@VisibleForTesting
ConversationItemViewCoordinates mCoordinates;
@@ -411,14 +390,8 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
sFoldersLeftPadding = res.getDimensionPixelOffset(R.dimen.folders_left_padding);
sContactPhotoManager = ContactPhotoManager.createContactPhotoManager(context);
sAttachmentPreviewsManager = ContactPhotoManager.createContactPhotoManager(context);
-
- if (REPORT_ANALYTICS) {
- EasyTracker.getInstance().setContext(context);
- sConversationItemViewTracker = EasyTracker.getTracker();
- }
}
-
mSendersTextView = new TextView(mContext);
mSendersTextView.setEllipsize(TextUtils.TruncateAt.END);
mSendersTextView.setIncludeFontPadding(false);
@@ -438,44 +411,6 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
mCoordinates.contactImagesX + mCoordinates.contactImagesWidth,
mCoordinates.contactImagesY + mCoordinates.contactImagesHeight);
}
-
- @Override
- public void onImagesResolved() {
- if (REPORT_ANALYTICS && !mReportedStats) {
- final int numTiles = mContactImagesHolder.getDivisionCount();
- final List<String> photoKeys = mContactImagesHolder.getDivisionIds();
- int numPhotos = 0;
- for (final String photoKey : photoKeys) {
- final Boolean isResolved =
- mContactImagesHolder.imageResolved(photoKey);
- if (isResolved != null && isResolved) {
- numPhotos++;
- }
- }
-
- // Number of subtiles
- sConversationItemViewTracker.setCustomMetric(1, (long)numTiles);
- // Number of resolved photos
- sConversationItemViewTracker.setCustomMetric(2, (long)numPhotos);
- // Number of letter subtiles
- sConversationItemViewTracker.setCustomMetric(3, (long)(numTiles - numPhotos));
- final String accountTypeCustomDimen = mAccount.endsWith("google.com") ?
- CUSTOM_DIMEN_ACCOUNT_TYPE_GOOGLE_COM :
- CUSTOM_DIMEN_ACCOUNT_TYPE_NON_GOOGLE_COM;
- sConversationItemViewTracker.setCustomDimension(3, accountTypeCustomDimen);
- // This is a hack. Ideally this would check the folder object to determine if it
- // is the primary section
- final String isPrimarySection =
- TextUtils.equals(mDisplayedFolder.persistentId, "^sq_ig_i_personal") ?
- "primary" : "not_primary";
- sConversationItemViewTracker.setCustomDimension(4, isPrimarySection);
-
- sConversationItemViewTracker.sendEvent(CONV_ITEM_VIEW_CATEGORY,
- CONTACT_PHOTO_ACTION, NUM_PHOTOS_LABEL, (long)numTiles);
-
- mReportedStats = true;
- }
- }
});
mAttachmentPreviewsCanvas = new DividedImageCanvas(context, this);
}
@@ -518,7 +453,6 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
mStarEnabled = folder != null && !folder.isTrash();
mSwipeEnabled = swipeEnabled;
mAdapter = adapter;
- mReportedStats = false;
if (mHeader.conversation.getAttachmentsCount() == 0) {
mAttachmentPreviewMode = ConversationItemViewCoordinates.ATTACHMENT_PREVIEW_NONE;
} else {
@@ -768,12 +702,11 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
mContactImagesHolder.setDimensions(mCoordinates.contactImagesWidth,
mCoordinates.contactImagesHeight);
mContactImagesHolder.setDivisionIds(mHeader.displayableSenderEmails);
- final int size = mHeader.displayableSenderEmails.size();
- final int numTiles = Math.min(DividedImageCanvas.MAX_DIVISIONS, size);
+ int size = mHeader.displayableSenderEmails.size();
String emailAddress;
- for (int i = 0; i < numTiles; i++) {
+ for (int i = 0; i < DividedImageCanvas.MAX_DIVISIONS && i < size; i++) {
emailAddress = mHeader.displayableSenderEmails.get(i);
- final PhotoIdentifier photoIdentifier = new ContactIdentifier(
+ PhotoIdentifier photoIdentifier = new ContactIdentifier(
mHeader.displayableSenderNames.get(i), emailAddress, i);
sContactPhotoManager.loadThumbnail(photoIdentifier, mContactImagesHolder);
}
@@ -1703,9 +1636,4 @@ public class ConversationItemView extends View implements SwipeableItemView, Tog
public float getMinAllowScrollDistance() {
return sScrollSlop;
}
-
- @Override
- public void onImagesResolved() {
- // Do nothing
- }
}
diff --git a/src/com/android/mail/photomanager/LetterTileProvider.java b/src/com/android/mail/photomanager/LetterTileProvider.java
index 57b8b55d7..cf752c224 100644
--- a/src/com/android/mail/photomanager/LetterTileProvider.java
+++ b/src/com/android/mail/photomanager/LetterTileProvider.java
@@ -127,7 +127,7 @@ public class LetterTileProvider implements DefaultImageProvider {
} else {
bitmap = getBitmap(mDims, true /* getDefault */);
}
- dividedImageView.addDivisionImage(bitmap, address, false);
+ dividedImageView.addDivisionImage(bitmap, address);
}
private static boolean isEnglishLetterOrDigit(char c) {
diff --git a/src/com/android/mail/photomanager/PhotoManager.java b/src/com/android/mail/photomanager/PhotoManager.java
index c23ce04ed..c2650a9a8 100644
--- a/src/com/android/mail/photomanager/PhotoManager.java
+++ b/src/com/android/mail/photomanager/PhotoManager.java
@@ -39,6 +39,7 @@ import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -254,7 +255,7 @@ public abstract class PhotoManager implements ComponentCallbacks2, Callback {
request,
Thread.currentThread());
- final boolean loaded = loadCachedPhoto(request, false);
+ boolean loaded = loadCachedPhoto(request, false);
if (loaded) {
if (DEBUG) LogUtils.v(TAG, "image request, cache hit. request queue size=%s",
mPendingRequests.size());
@@ -414,16 +415,12 @@ public abstract class PhotoManager implements ComponentCallbacks2, Callback {
private void processLoadedImages() {
final List<Long> toRemove = Lists.newArrayList();
for (Long hash : mPendingRequests.keySet()) {
- final Request request = mPendingRequests.get(hash);
- final boolean loaded = loadCachedPhoto(request, true);
+ Request request = mPendingRequests.get(hash);
+ boolean loaded = loadCachedPhoto(request, true);
if (loaded) {
toRemove.add(hash);
}
- // We want to call onCachedImageLoaded in all cases here, as when loaded is false,
- // loadCachedPhoto will attempt to reload the letter tile.
- request.getView().onCachedImageLoaded();
}
-
for (Long key : toRemove) {
mPendingRequests.remove(key);
}
diff --git a/src/com/android/mail/ui/DividedImageCanvas.java b/src/com/android/mail/ui/DividedImageCanvas.java
index b441aba36..2338189ca 100644
--- a/src/com/android/mail/ui/DividedImageCanvas.java
+++ b/src/com/android/mail/ui/DividedImageCanvas.java
@@ -55,8 +55,6 @@ public class DividedImageCanvas implements ImageCanvas {
private final Context mContext;
private final InvalidateCallback mCallback;
private final ArrayList<Bitmap> mDivisionImages = new ArrayList<Bitmap>(MAX_DIVISIONS);
- private final ArrayList<Boolean> mImageStatusList = new ArrayList<Boolean>(MAX_DIVISIONS);
- private int mNumCachedImagesLoaded = 0;
/**
* Ignore any request to draw final output when not yet ready. This prevents partially drawn
@@ -112,13 +110,10 @@ public class DividedImageCanvas implements ImageCanvas {
}
mDivisionMap.clear();
mDivisionImages.clear();
- mImageStatusList.clear();
- mNumCachedImagesLoaded = 0;
int i = 0;
for (String id : divisionIds) {
mDivisionMap.put(id, i);
mDivisionImages.add(null);
- mImageStatusList.add(null);
i++;
}
}
@@ -184,20 +179,18 @@ public class DividedImageCanvas implements ImageCanvas {
@Override
public void drawImage(Bitmap b, Object id) {
- addDivisionImage(b, id, true);
+ addDivisionImage(b, id);
}
/**
* Add a bitmap to this view in the quadrant matching its id.
* @param b Bitmap
* @param id Id to look for that was previously set in setDivisionIds.
- * @param resolved Indicates whether this image has been resolved
*/
- public void addDivisionImage(Bitmap b, Object id, boolean resolved) {
+ public void addDivisionImage(Bitmap b, Object id) {
final Integer pos = mDivisionMap.get(id);
if (pos != null && pos >= 0 && b != null) {
mDivisionImages.set(pos, b);
- mImageStatusList.set(pos, resolved);
boolean complete = false;
final int width = mWidth;
final int height = mHeight;
@@ -291,14 +284,6 @@ public class DividedImageCanvas implements ImageCanvas {
return pos != null && mDivisionImages.get(pos) != null;
}
- public Boolean imageResolved(Object id) {
- final Integer pos = mDivisionMap.get(id);
- if (pos == null) {
- return null;
- }
- return mImageStatusList.get(pos);
- }
-
private void setupDividerLines() {
if (sDividerLineWidth == -1) {
Resources res = getContext().getResources();
@@ -341,7 +326,6 @@ public class DividedImageCanvas implements ImageCanvas {
mDivisionMap.clear();
mDivisionImages.clear();
mGeneration++;
- mNumCachedImagesLoaded = 0;
}
@Override
@@ -385,10 +369,8 @@ public class DividedImageCanvas implements ImageCanvas {
* The class that will provided the canvas to which the DividedImageCanvas
* should render its contents must implement this interface.
*/
- // TODO(pwestbro): rename this interface to match the usage
public interface InvalidateCallback {
public void invalidate();
- public void onImagesResolved();
}
public int getDivisionCount() {
@@ -416,11 +398,4 @@ public class DividedImageCanvas implements ImageCanvas {
// TODO: remove me soon.
return null;
}
-
- @Override
- public void onCachedImageLoaded() {
- if (++mNumCachedImagesLoaded >= mDivisionMap.size()) {
- mCallback.onImagesResolved();
- }
- }
}
diff --git a/src/com/android/mail/ui/ImageCanvas.java b/src/com/android/mail/ui/ImageCanvas.java
index 8f7c13075..850df2fe6 100644
--- a/src/com/android/mail/ui/ImageCanvas.java
+++ b/src/com/android/mail/ui/ImageCanvas.java
@@ -89,9 +89,4 @@ public interface ImageCanvas {
* data binding.
*/
int getGeneration();
-
- /**
- * Called when an image is loaded on this ImageCanvas
- */
- void onCachedImageLoaded();
}