summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/gallery3d')
-rw-r--r--src/com/android/gallery3d/app/StateManager.java12
-rw-r--r--src/com/android/gallery3d/filtershow/FilterShowActivity.java21
-rw-r--r--src/com/android/gallery3d/filtershow/category/Action.java2
-rw-r--r--src/com/android/gallery3d/filtershow/filters/BaseFiltersManager.java14
-rw-r--r--src/com/android/gallery3d/filtershow/filters/FilterFxRepresentation.java2
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/MasterImage.java4
-rw-r--r--src/com/android/gallery3d/filtershow/presets/ImagePreset.java8
-rw-r--r--src/com/android/gallery3d/filtershow/tools/IconFactory.java2
-rw-r--r--src/com/android/gallery3d/filtershow/tools/SaveCopyTask.java3
9 files changed, 53 insertions, 15 deletions
diff --git a/src/com/android/gallery3d/app/StateManager.java b/src/com/android/gallery3d/app/StateManager.java
index c0c84c950..53c3fc228 100644
--- a/src/com/android/gallery3d/app/StateManager.java
+++ b/src/com/android/gallery3d/app/StateManager.java
@@ -64,14 +64,10 @@ public class StateManager {
StateTransitionAnimation.Transition.Incoming);
if (mIsResumed) top.onPause();
}
- // Ignore the filmstrip used for the root of the camera app
- boolean ignoreHit = (mActivity instanceof CameraActivity)
- && mStack.isEmpty();
- if (!ignoreHit) {
- UsageStatistics.onContentViewChanged(
- UsageStatistics.COMPONENT_GALLERY,
- klass.getSimpleName());
- }
+
+ UsageStatistics.onContentViewChanged(
+ UsageStatistics.COMPONENT_GALLERY,
+ klass.getSimpleName());
state.initialize(mActivity, data);
mStack.push(new StateEntry(data, state));
diff --git a/src/com/android/gallery3d/filtershow/FilterShowActivity.java b/src/com/android/gallery3d/filtershow/FilterShowActivity.java
index 13aa3aa85..289a4c37b 100644
--- a/src/com/android/gallery3d/filtershow/FilterShowActivity.java
+++ b/src/com/android/gallery3d/filtershow/FilterShowActivity.java
@@ -37,6 +37,7 @@ import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
import android.util.DisplayMetrics;
import android.util.TypedValue;
+import android.util.Log;
import android.view.Display;
import android.view.Menu;
import android.view.MenuItem;
@@ -91,6 +92,7 @@ import com.android.gallery3d.filtershow.tools.XmpPresets.XMresults;
import com.android.gallery3d.filtershow.ui.FramedTextButton;
import com.android.gallery3d.filtershow.ui.Spline;
import com.android.gallery3d.util.GalleryUtils;
+import com.android.gallery3d.util.UsageStatistics;
import com.android.photos.data.GalleryBitmapPool;
import java.io.File;
@@ -168,6 +170,9 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
extractXMPData();
processIntent();
+ UsageStatistics.onContentViewChanged(UsageStatistics.COMPONENT_EDITOR, "Main");
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ UsageStatistics.CATEGORY_LIFECYCLE, UsageStatistics.LIFECYCLE_START);
}
public boolean isShowingImageStatePanel() {
@@ -514,6 +519,10 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
cannotLoadImage();
}
+ if (null == CachingPipeline.getRenderScriptContext()){
+ Log.v(LOGTAG,"RenderScript context destroyed during load");
+ return;
+ }
final View loading = findViewById(R.id.loading);
loading.setVisibility(View.GONE);
final View imageShow = findViewById(R.id.imageShow);
@@ -748,6 +757,8 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
mMasterImage.onHistoryItemClick(position);
backToMain();
invalidateViews();
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ UsageStatistics.CATEGORY_BUTTON_PRESS, "Undo");
return true;
}
case R.id.redoButton: {
@@ -755,14 +766,21 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
int position = adapter.redo();
mMasterImage.onHistoryItemClick(position);
invalidateViews();
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ UsageStatistics.CATEGORY_BUTTON_PRESS, "Redo");
return true;
}
case R.id.resetHistoryButton: {
resetHistory();
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ UsageStatistics.CATEGORY_BUTTON_PRESS, "ResetHistory");
return true;
}
case R.id.showImageStateButton: {
toggleImageStatePanel();
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ UsageStatistics.CATEGORY_BUTTON_PRESS,
+ mShowingImageStatePanel ? "ShowPanel" : "HidePanel");
return true;
}
case android.R.id.home: {
@@ -983,6 +1001,9 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
public void done() {
hideSavingProgress();
+ if (mLoadBitmapTask != null) {
+ mLoadBitmapTask.cancel(false);
+ }
finish();
}
diff --git a/src/com/android/gallery3d/filtershow/category/Action.java b/src/com/android/gallery3d/filtershow/category/Action.java
index 506b2bf0f..b46147961 100644
--- a/src/com/android/gallery3d/filtershow/category/Action.java
+++ b/src/com/android/gallery3d/filtershow/category/Action.java
@@ -134,7 +134,7 @@ public class Action implements RenderingRequestCaller {
m.mapRect(image);
m.setRectToRect(image, frame, Matrix.ScaleToFit.FILL);
Canvas canvas = new Canvas(destination);
- canvas.drawBitmap(source, m, new Paint());
+ canvas.drawBitmap(source, m, new Paint(Paint.FILTER_BITMAP_FLAG));
}
@Override
diff --git a/src/com/android/gallery3d/filtershow/filters/BaseFiltersManager.java b/src/com/android/gallery3d/filtershow/filters/BaseFiltersManager.java
index 4186b9337..daa599940 100644
--- a/src/com/android/gallery3d/filtershow/filters/BaseFiltersManager.java
+++ b/src/com/android/gallery3d/filtershow/filters/BaseFiltersManager.java
@@ -162,9 +162,23 @@ public abstract class BaseFiltersManager implements FiltersManagerInterface {
R.string.ffx_x_process
};
+ // Do not localize.
+ String[] serializationNames = {
+ "LUT3D_PUNCH",
+ "LUT3D_VINTAGE",
+ "LUT3D_BW",
+ "LUT3D_BLEACH",
+ "LUT3D_INSTANT",
+ "LUT3D_WASHOUT",
+ "LUT3D_BLUECRUSH",
+ "LUT3D_WASHOUT",
+ "LUT3D_XPROCESS"
+ };
+
for (int i = 0; i < drawid.length; i++) {
FilterFxRepresentation fx = new FilterFxRepresentation(
context.getString(fxNameid[i]), drawid[i], fxNameid[i]);
+ fx.setSerializationName(serializationNames[i]);
representations.add(fx);
addRepresentation(fx);
}
diff --git a/src/com/android/gallery3d/filtershow/filters/FilterFxRepresentation.java b/src/com/android/gallery3d/filtershow/filters/FilterFxRepresentation.java
index 2dbff94bd..dfe0308c1 100644
--- a/src/com/android/gallery3d/filtershow/filters/FilterFxRepresentation.java
+++ b/src/com/android/gallery3d/filtershow/filters/FilterFxRepresentation.java
@@ -19,7 +19,6 @@ package com.android.gallery3d.filtershow.filters;
import com.android.gallery3d.filtershow.editors.ImageOnlyEditor;
public class FilterFxRepresentation extends FilterRepresentation {
- private static final String SERIALIZATION_NAME = "LUT3D";
private static final String LOGTAG = "FilterFxRepresentation";
// TODO: When implementing serialization, we should find a unique way of
// specifying bitmaps / names (the resource IDs being random)
@@ -28,7 +27,6 @@ public class FilterFxRepresentation extends FilterRepresentation {
public FilterFxRepresentation(String name, int bitmapResource, int nameResource) {
super(name);
- setSerializationName(SERIALIZATION_NAME + "_" + name);
setFilterClass(ImageFilterFx.class);
mBitmapResource = bitmapResource;
mNameResource = nameResource;
diff --git a/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java b/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
index 8f490ca5e..4ea944b7b 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/MasterImage.java
@@ -140,7 +140,9 @@ public class MasterImage implements RenderingRequestCaller {
}
public synchronized void setPreset(ImagePreset preset, boolean addToHistory) {
- preset.showFilters();
+ if (DEBUG) {
+ preset.showFilters();
+ }
mPreset = preset;
mPreset.setImageLoader(mLoader);
setGeometry();
diff --git a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
index f06e048a2..ebefa015f 100644
--- a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
+++ b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
@@ -471,7 +471,7 @@ public class ImagePreset {
bitmap = environment.applyRepresentation(mBorder, bitmap);
if (environment.getQuality() == FilterEnvironment.QUALITY_FINAL) {
UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
- "SaveBorder", mBorder.getName(), 1);
+ "SaveBorder", mBorder.getSerializationName(), 1);
}
}
return bitmap;
@@ -489,6 +489,10 @@ public class ImagePreset {
if (to == -1) {
to = mFilters.size();
}
+ if (environment.getQuality() == FilterEnvironment.QUALITY_FINAL) {
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ "SaveFilters", "Total", to - from + 1);
+ }
for (int i = from; i < to; i++) {
FilterRepresentation representation = null;
synchronized (mFilters) {
@@ -498,7 +502,7 @@ public class ImagePreset {
bitmap = environment.applyRepresentation(representation, bitmap);
if (environment.getQuality() == FilterEnvironment.QUALITY_FINAL) {
UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
- "SaveFilter", representation.getName(), 1);
+ "SaveFilter", representation.getSerializationName(), 1);
}
if (environment.needsStop()) {
return bitmap;
diff --git a/src/com/android/gallery3d/filtershow/tools/IconFactory.java b/src/com/android/gallery3d/filtershow/tools/IconFactory.java
index ccc49e13d..9e39f27fc 100644
--- a/src/com/android/gallery3d/filtershow/tools/IconFactory.java
+++ b/src/com/android/gallery3d/filtershow/tools/IconFactory.java
@@ -103,6 +103,6 @@ public class IconFactory {
rec.roundOut(srcRect);
}
- canvas.drawBitmap(sourceImage, srcRect, destRect, new Paint());
+ canvas.drawBitmap(sourceImage, srcRect, destRect, new Paint(Paint.FILTER_BITMAP_FLAG));
}
}
diff --git a/src/com/android/gallery3d/filtershow/tools/SaveCopyTask.java b/src/com/android/gallery3d/filtershow/tools/SaveCopyTask.java
index 0d3d5ac06..9e96e96c3 100644
--- a/src/com/android/gallery3d/filtershow/tools/SaveCopyTask.java
+++ b/src/com/android/gallery3d/filtershow/tools/SaveCopyTask.java
@@ -36,6 +36,7 @@ import com.android.gallery3d.filtershow.cache.CachingPipeline;
import com.android.gallery3d.filtershow.cache.ImageLoader;
import com.android.gallery3d.filtershow.filters.FiltersManager;
import com.android.gallery3d.filtershow.presets.ImagePreset;
+import com.android.gallery3d.util.UsageStatistics;
import com.android.gallery3d.util.XmpUtilHelper;
import java.io.File;
@@ -328,6 +329,8 @@ public class SaveCopyTask extends AsyncTask<ImagePreset, Void, Uri> {
}
noBitmap = false;
+ UsageStatistics.onEvent(UsageStatistics.COMPONENT_EDITOR,
+ "SaveComplete", null);
} catch (java.lang.OutOfMemoryError e) {
// Try 5 times before failing for good.
if (++num_tries >= 5) {