diff options
author | Paul Rohde <codelogic@google.com> | 2015-05-27 23:36:28 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-05-27 23:36:28 +0000 |
commit | 14d92c346e1890cf3eeb0fb9c846d834e2c59179 (patch) | |
tree | 92198d4ef6daf68439cb837387318471dfa1f915 /src | |
parent | d927492ade2e253ccc620effd5602582eaa6dd2d (diff) | |
parent | 646e84f85a3f463ce094ad5a9caca261277f0d0e (diff) | |
download | android_packages_apps_Camera2-14d92c346e1890cf3eeb0fb9c846d834e2c59179.tar.gz android_packages_apps_Camera2-14d92c346e1890cf3eeb0fb9c846d834e2c59179.tar.bz2 android_packages_apps_Camera2-14d92c346e1890cf3eeb0fb9c846d834e2c59179.zip |
Merge "Log capture session canceled events." into ub-camera-haleakala
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/camera/CaptureModule.java | 14 | ||||
-rw-r--r-- | src/com/android/camera/session/CaptureSession.java | 6 | ||||
-rw-r--r-- | src/com/android/camera/session/CaptureSessionImpl.java | 3 |
3 files changed, 22 insertions, 1 deletions
diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java index afc4a1492..79dfe09d7 100644 --- a/src/com/android/camera/CaptureModule.java +++ b/src/com/android/camera/CaptureModule.java @@ -456,7 +456,7 @@ public class CaptureModule extends CameraModule implements new CaptureSession.CaptureSessionCreator() { @Override public CaptureSession createAndStartEmpty() { - return createAndStartCaptureSession(); + return createAndStartUntrackedCaptureSession(); } }, deviceOrientation, @@ -562,6 +562,18 @@ public class CaptureModule extends CameraModule implements return session; } + private CaptureSession createAndStartUntrackedCaptureSession() { + long sessionTime = getSessionTime(); + Location location = mLocationManager.getCurrentLocation(); + String title = CameraUtil.instance().createJpegName(sessionTime); + CaptureSession session = getServices().getCaptureSessionManager() + .createNewSession(title, sessionTime, location); + + session.startEmpty(null, + new Size((int) mPreviewArea.width(), (int) mPreviewArea.height())); + return session; + } + private long getSessionTime() { // TODO: Replace with a mockable TimeProvider interface. return System.currentTimeMillis(); diff --git a/src/com/android/camera/session/CaptureSession.java b/src/com/android/camera/session/CaptureSession.java index 0dff1a1b3..a7f8885cd 100644 --- a/src/com/android/camera/session/CaptureSession.java +++ b/src/com/android/camera/session/CaptureSession.java @@ -99,6 +99,12 @@ public interface CaptureSession { * This occurs after all the bytes are physically on disk. */ public void onCapturePersisted(); + + /** + * This occurs if a capture session is created but is later canceled for + * some reason. + */ + public void onCaptureCanceled(); } /** Returns the title/name of this session. */ diff --git a/src/com/android/camera/session/CaptureSessionImpl.java b/src/com/android/camera/session/CaptureSessionImpl.java index 559f04074..6166a33f0 100644 --- a/src/com/android/camera/session/CaptureSessionImpl.java +++ b/src/com/android/camera/session/CaptureSessionImpl.java @@ -282,6 +282,9 @@ public class CaptureSessionImpl implements CaptureSession { if (isStarted()) { mSessionManager.removeSession(mUri); mSessionNotifier.notifyTaskCanceled(mUri); + if (mImageLifecycleListener != null) { + mImageLifecycleListener.onCaptureCanceled(); + } } if (mPlaceHolder != null) { |