diff options
author | codeworkx <codeworkx@cyanogenmod.org> | 2016-01-06 00:10:40 +0100 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2016-11-02 12:22:27 -0700 |
commit | 574888cd358907f171e69919e213bcdc61be2376 (patch) | |
tree | f9470ae58ce5319d31e26de8d9e48228bd691eae | |
parent | 602a7c22051ea07d0a6ecf0dcc0fb4971a9f3e7a (diff) | |
download | android_packages_apps_Snap-574888cd358907f171e69919e213bcdc61be2376.tar.gz android_packages_apps_Snap-574888cd358907f171e69919e213bcdc61be2376.tar.bz2 android_packages_apps_Snap-574888cd358907f171e69919e213bcdc61be2376.zip |
add options to restart preview onPictureTaken
Change-Id: I7ce9d6f2323e367743e6d4c9662b846d3052f2a4
-rw-r--r-- | res/values/config.xml | 6 | ||||
-rwxr-xr-x | src/com/android/camera/PhotoModule.java | 17 |
2 files changed, 23 insertions, 0 deletions
diff --git a/res/values/config.xml b/res/values/config.xml index 0e7e58780..80b0d9215 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -32,6 +32,12 @@ <!-- Set's parameter "lge-camera" for LGE devices. --> <bool name="lge_camera">false</bool> + <!-- Restart preview for back camera onPictureTaken --> + <bool name="back_camera_restart_preview_onPictureTaken">false</bool> + + <!-- Restart preview for front camera onPictureTaken --> + <bool name="front_camera_restart_preview_onPictureTaken">false</bool> + <!-- Set's manufacturer specific parameters on startup. Example: lge-camera=1;cam-mode=0 --> <string name="manufacturer_key_values"></string> diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index dc4b9726e..0f03a7a26 100755 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -64,6 +64,7 @@ import android.widget.SeekBar.OnSeekBarChangeListener; import android.widget.LinearLayout; import android.widget.TextView; +import com.android.camera.app.CameraApp; import com.android.camera.CameraManager.CameraAFCallback; import com.android.camera.CameraManager.CameraAFMoveCallback; import com.android.camera.CameraManager.CameraPictureCallback; @@ -252,6 +253,8 @@ public class PhotoModule private byte[] mLastJpegData; private int mLastJpegOrientation = 0; + private static Context mApplicationContext; + private Runnable mDoSnapRunnable = new Runnable() { @Override public void run() { @@ -901,6 +904,8 @@ public class PhotoModule return; } + mApplicationContext = CameraApp.getContext(); + // Initialize location service. boolean recordLocation = RecordLocationPreference.get(mPreferences); mLocationManager.recordLocation(recordLocation); @@ -1343,6 +1348,18 @@ public class PhotoModule && (mCameraState != LONGSHOT) && (mSnapshotMode != CameraInfo.CAMERA_SUPPORT_MODE_ZSL) && (mReceivedSnapNum == mBurstSnapNum); + + boolean backCameraRestartPreviewOnPictureTaken = + mApplicationContext.getResources().getBoolean(R.bool.back_camera_restart_preview_onPictureTaken); + boolean frontCameraRestartPreviewOnPictureTaken = + mApplicationContext.getResources().getBoolean(R.bool.front_camera_restart_preview_onPictureTaken); + + CameraInfo info = CameraHolder.instance().getCameraInfo()[mCameraId]; + if ((info.facing == CameraInfo.CAMERA_FACING_BACK && backCameraRestartPreviewOnPictureTaken) + || (info.facing == CameraInfo.CAMERA_FACING_FRONT && frontCameraRestartPreviewOnPictureTaken)) { + needRestartPreview = true; + } + if (needRestartPreview) { setupPreview(); if (CameraUtil.FOCUS_MODE_CONTINUOUS_PICTURE.equals( |