summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/VideoUI.java
diff options
context:
space:
mode:
authorManikanta Kanamarlapudi <kmanikan@codeaurora.org>2014-01-06 14:31:43 +0530
committerManikanta Kanamarlapudi <kmanikan@codeaurora.org>2014-01-21 14:17:54 +0530
commitae019674d5331e750230fd92d8138d02b751f0f1 (patch)
tree7a5e517b991471b10b0f5d1090dbf2088250e7d8 /src/com/android/camera/VideoUI.java
parent4fa5b46ba5ba7872a6815d869ab1d4c72a588dc9 (diff)
downloadandroid_packages_apps_Snap-ae019674d5331e750230fd92d8138d02b751f0f1.tar.gz
android_packages_apps_Snap-ae019674d5331e750230fd92d8138d02b751f0f1.tar.bz2
android_packages_apps_Snap-ae019674d5331e750230fd92d8138d02b751f0f1.zip
Camera2: Added pause button in Camcorder
- Added pause button in camcorder app.so that user pause recording and resume later which results in a single recorded clip. CRs-Fixed: 587051 Change-Id: I2a7d8af7fcea74fe8af62c44119c3c1fa0c13e85
Diffstat (limited to 'src/com/android/camera/VideoUI.java')
-rw-r--r--src/com/android/camera/VideoUI.java33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/com/android/camera/VideoUI.java b/src/com/android/camera/VideoUI.java
index bb270b7f8..8ea709141 100644
--- a/src/com/android/camera/VideoUI.java
+++ b/src/com/android/camera/VideoUI.java
@@ -49,6 +49,7 @@ import com.android.camera.ui.ModuleSwitcher;
import com.android.camera.ui.PieRenderer;
import com.android.camera.ui.RenderOverlay;
import com.android.camera.ui.RotateLayout;
+import com.android.camera.PauseButton.OnPauseButtonListener;
import com.android.camera.ui.ZoomRenderer;
import com.android.camera.util.CameraUtil;
import com.android.camera2.R;
@@ -58,7 +59,8 @@ import java.util.List;
public class VideoUI implements PieRenderer.PieListener,
PreviewGestures.SingleTapListener,
CameraRootView.MyDisplayListener,
- SurfaceTextureListener, SurfaceHolder.Callback {
+ SurfaceTextureListener, SurfaceHolder.Callback,
+ PauseButton.OnPauseButtonListener {
private static final String TAG = "CAM_VideoUI";
private static final int UPDATE_TRANSFORM_MATRIX = 1;
// module fields
@@ -72,6 +74,7 @@ public class VideoUI implements PieRenderer.PieListener,
private View mReviewDoneButton;
private View mReviewPlayButton;
private ShutterButton mShutterButton;
+ private PauseButton mPauseButton;
private ModuleSwitcher mSwitcher;
private TextView mRecordingTimeView;
private LinearLayout mLabelsLinearLayout;
@@ -192,6 +195,7 @@ public class VideoUI implements PieRenderer.PieListener,
initializeMiscControls();
initializeControlByIntent();
initializeOverlay();
+ initializePauseButton();
mAnimationManager = new AnimationManager();
mOrientationResize = false;
mPrevOrientationResize = false;
@@ -514,6 +518,11 @@ public class VideoUI implements PieRenderer.PieListener,
mLabelsLinearLayout = (LinearLayout) mRootView.findViewById(R.id.labels);
}
+ private void initializePauseButton() {
+ mPauseButton = (PauseButton) mRootView.findViewById(R.id.video_pause);
+ mPauseButton.setOnPauseButtonListener(this);
+ }
+
public void updateOnScreenIndicators(Parameters param, ComboPreferences prefs) {
mOnScreenIndicators.updateFlashOnScreenIndicator(param.getFlashMode());
boolean location = RecordLocationPreference.get(
@@ -631,12 +640,14 @@ public class VideoUI implements PieRenderer.PieListener,
hideSwitcher();
mRecordingTimeView.setText("");
mRecordingTimeView.setVisibility(View.VISIBLE);
+ mPauseButton.setVisibility(View.VISIBLE);
} else {
mShutterButton.setImageResource(R.drawable.btn_new_shutter_video);
if (!mController.isVideoCaptureIntent()) {
showSwitcher();
}
mRecordingTimeView.setVisibility(View.GONE);
+ mPauseButton.setVisibility(View.GONE);
}
}
@@ -811,4 +822,24 @@ public class VideoUI implements PieRenderer.PieListener,
Log.v(TAG, "Surface destroyed");
mController.stopPreview();
}
+
+ @Override
+ public void onButtonPause() {
+ mRecordingTimeView.setCompoundDrawablesWithIntrinsicBounds(
+ R.drawable.ic_pausing_indicator, 0, 0, 0);
+ mController.onButtonPause();
+ }
+
+ @Override
+ public void onButtonContinue() {
+ mRecordingTimeView.setCompoundDrawablesWithIntrinsicBounds(
+ R.drawable.ic_recording_indicator, 0, 0, 0);
+ mController.onButtonContinue();
+ }
+
+ public void resetPauseButton() {
+ mRecordingTimeView.setCompoundDrawablesWithIntrinsicBounds(
+ R.drawable.ic_recording_indicator, 0, 0, 0);
+ mPauseButton.setPaused(false);
+ }
}