Merge "In debug_ui mode, show CAF result state, length of AF scan, fps, for camera2 API." into ub-camera-glacier
diff --git a/src/com/android/camera/app/FilmstripBottomPanel.java b/src/com/android/camera/app/FilmstripBottomPanel.java
index f978856..018476c 100644
--- a/src/com/android/camera/app/FilmstripBottomPanel.java
+++ b/src/com/android/camera/app/FilmstripBottomPanel.java
@@ -16,6 +16,9 @@
package com.android.camera.app;
+import android.animation.Animator;
+import android.animation.AnimatorListenerAdapter;
+import android.animation.ObjectAnimator;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
@@ -269,17 +272,29 @@
}
public void show() {
- if (mLayout.getTranslationY() > 0) {
- mLayout.animate().translationY(0).setDuration(ANIM_DURATION)
- .setInterpolator(Gusterpolator.INSTANCE);
- }
+ ObjectAnimator animator = ObjectAnimator
+ .ofFloat(mLayout, "translationY", mLayout.getHeight(), 0.0f);
+ animator.setDuration(ANIM_DURATION);
+ animator.setInterpolator(Gusterpolator.INSTANCE);
+ animator.addListener(new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ mViewButton.updateClingVisibility();
+ }
+ });
+ mViewButton.hideClings();
+ animator.start();
}
public void hide() {
int offset = mLayout.getHeight();
if (mLayout.getTranslationY() < offset) {
- mLayout.animate().translationY(offset).setDuration(ANIM_DURATION)
- .setInterpolator(Gusterpolator.INSTANCE);
+ ObjectAnimator animator = ObjectAnimator
+ .ofFloat(mLayout, "translationY", mLayout.getTranslationY(), offset);
+ animator.setDuration(ANIM_DURATION);
+ animator.setInterpolator(Gusterpolator.INSTANCE);
+ mViewButton.hideClings();
+ animator.start();
}
}
}
diff --git a/src/com/android/camera/one/v2/ImageCaptureManager.java b/src/com/android/camera/one/v2/ImageCaptureManager.java
index 464cb1e..a815345 100644
--- a/src/com/android/camera/one/v2/ImageCaptureManager.java
+++ b/src/com/android/camera/one/v2/ImageCaptureManager.java
@@ -56,7 +56,7 @@
* they are passed in from the lower-level camera2 API.
*/
@TargetApi(Build.VERSION_CODES.L)
-public class ImageCaptureManager extends CameraCaptureSession.CaptureListener implements
+public class ImageCaptureManager extends CameraCaptureSession.CaptureCallback implements
ImageReader.OnImageAvailableListener {
/**
* Callback to listen for changes to the ability to capture an existing
diff --git a/src/com/android/camera/one/v2/OneCameraImpl.java b/src/com/android/camera/one/v2/OneCameraImpl.java
index 28e214c..e27755d 100644
--- a/src/com/android/camera/one/v2/OneCameraImpl.java
+++ b/src/com/android/camera/one/v2/OneCameraImpl.java
@@ -153,8 +153,8 @@
/**
* Common listener for preview frame metadata.
*/
- private final CameraCaptureSession.CaptureListener mAutoFocusStateListener = new
- CameraCaptureSession.CaptureListener() {
+ private final CameraCaptureSession.CaptureCallback mAutoFocusStateListener = new
+ CameraCaptureSession.CaptureCallback() {
@Override
public void onCaptureStarted(CameraCaptureSession session, CaptureRequest request,
long timestamp) {
@@ -474,7 +474,7 @@
outputSurfaces.add(previewSurface);
outputSurfaces.add(mCaptureImageReader.getSurface());
- mDevice.createCaptureSession(outputSurfaces, new CameraCaptureSession.StateListener() {
+ mDevice.createCaptureSession(outputSurfaces, new CameraCaptureSession.StateCallback() {
@Override
public void onConfigureFailed(CameraCaptureSession session) {
diff --git a/src/com/android/camera/one/v2/OneCameraManagerImpl.java b/src/com/android/camera/one/v2/OneCameraManagerImpl.java
index 48b3fcf..0f22477 100644
--- a/src/com/android/camera/one/v2/OneCameraManagerImpl.java
+++ b/src/com/android/camera/one/v2/OneCameraManagerImpl.java
@@ -66,7 +66,7 @@
try {
final String cameraId = getCameraId(facing);
Log.i(TAG, "Opening Camera ID " + cameraId);
- mCameraManager.openCamera(cameraId, new CameraDevice.StateListener() {
+ mCameraManager.openCamera(cameraId, new CameraDevice.StateCallback() {
@Override
public void onDisconnected(CameraDevice device) {
diff --git a/src/com/android/camera/one/v2/OneCameraZslImpl.java b/src/com/android/camera/one/v2/OneCameraZslImpl.java
index c8a21de..34284dd 100644
--- a/src/com/android/camera/one/v2/OneCameraZslImpl.java
+++ b/src/com/android/camera/one/v2/OneCameraZslImpl.java
@@ -645,7 +645,7 @@
outputSurfaces.add(previewSurface);
outputSurfaces.add(mCaptureImageReader.getSurface());
- mDevice.createCaptureSession(outputSurfaces, new CameraCaptureSession.StateListener() {
+ mDevice.createCaptureSession(outputSurfaces, new CameraCaptureSession.StateCallback() {
@Override
public void onConfigureFailed(CameraCaptureSession session) {
listener.onSetupFailed();
diff --git a/src/com/android/camera/widget/Cling.java b/src/com/android/camera/widget/Cling.java
index 46ef68b..712dc9b 100644
--- a/src/com/android/camera/widget/Cling.java
+++ b/src/com/android/camera/widget/Cling.java
@@ -76,7 +76,7 @@
/**
* Adjust the translation of the cling to stay on top of the reference view.
*/
- private void adjustPosition() {
+ public void adjustPosition() {
if (mReferenceView == null) {
return;
}
diff --git a/src/com/android/camera/widget/ExternalViewerButton.java b/src/com/android/camera/widget/ExternalViewerButton.java
index bac54d0..7ac42f4 100644
--- a/src/com/android/camera/widget/ExternalViewerButton.java
+++ b/src/com/android/camera/widget/ExternalViewerButton.java
@@ -110,7 +110,7 @@
/**
* Sets all the clings to be invisible.
*/
- private void hideClings() {
+ public void hideClings() {
for (int i = 0; i < mClingMap.size(); i++) {
mClingMap.valueAt(i).setVisibility(View.INVISIBLE);
}
@@ -134,11 +134,12 @@
* Updates the visibility of clings based on whether the button is currently
* shown.
*/
- private void updateClingVisibility() {
+ public void updateClingVisibility() {
hideClings();
if (isShown()) {
- View cling = mClingMap.get(mState);
+ Cling cling = mClingMap.get(mState);
if (cling != null) {
+ cling.adjustPosition();
cling.setVisibility(View.VISIBLE);
}
}