OSDN Git Service

DO NOT MERGE Pipe context through to camera
authorSascha Häberling <haeberling@google.com>
Sat, 6 Sep 2014 02:50:42 +0000 (02:50 +0000)
committerAlan Newberger <alann@google.com>
Mon, 8 Sep 2014 18:57:43 +0000 (18:57 +0000)
  Bug: 17203825

Not merging since a CL depending on this one cannot be merged cleanly into lmp-dev right now: http://ag/541468

Will also apply this one to haleakala.

Change-Id: I7a386b92cf6168185bd28bd02a78d87c5826639a
(cherry picked from commit 13d07d0ecb3bc808fb6f5b65508b1948ab3149d8)

src/com/android/camera/CaptureModule.java
src/com/android/camera/one/OneCameraManager.java
src/com/android/camera/one/v2/OneCameraManagerImpl.java
src_pd/com/android/camera/one/v2/OneCameraCreator.java

index 16a0d69..03d191f 100644 (file)
@@ -834,7 +834,6 @@ public class CaptureModule extends CameraModule
     @Override
     public void onPictureTaken(CaptureSession session) {
         mAppController.getCameraAppUI().enableModeOptions();
-        mAppController.getCameraAppUI().setShutterButtonEnabled(true);
     }
 
     @Override
index 4a4ed6e..13f7dfe 100644 (file)
@@ -87,7 +87,8 @@ public abstract class OneCameraManager {
         int maxMemoryMB = activity.getServices().getMemoryManager()
                 .getMaxAllowedNativeMemoryAllocation();
         if (cameraManager != null && isCamera2Supported(cameraManager)) {
-            return new com.android.camera.one.v2.OneCameraManagerImpl(cameraManager, maxMemoryMB,
+            return new com.android.camera.one.v2.OneCameraManagerImpl(
+                    activity.getApplicationContext(), cameraManager, maxMemoryMB,
                     displayMetrics, activity.getSoundPlayer());
         } else {
             return new com.android.camera.one.v1.OneCameraManagerImpl();
index d876f2e..0f22477 100644 (file)
@@ -16,6 +16,7 @@
 
 package com.android.camera.one.v2;
 
+import android.content.Context;
 import android.hardware.camera2.CameraAccessException;
 import android.hardware.camera2.CameraCharacteristics;
 import android.hardware.camera2.CameraDevice;
@@ -36,6 +37,8 @@ import com.android.camera.util.Size;
  */
 public class OneCameraManagerImpl extends OneCameraManager {
     private static final Tag TAG = new Tag("OneCameraMgrImpl2");
+
+    private final Context mContext;
     private final CameraManager mCameraManager;
     private final int mMaxMemoryMB;
     private final DisplayMetrics mDisplayMetrics;
@@ -48,8 +51,9 @@ public class OneCameraManagerImpl extends OneCameraManager {
      * @param maxMemoryMB maximum amount of memory opened cameras should consume
      *            during capture and processing, in megabytes.
      */
-    public OneCameraManagerImpl(CameraManager cameraManager, int maxMemoryMB,
+    public OneCameraManagerImpl(Context context, CameraManager cameraManager, int maxMemoryMB,
             DisplayMetrics displayMetrics, SoundPlayer soundPlayer) {
+        mContext = context;
         mCameraManager = cameraManager;
         mMaxMemoryMB = maxMemoryMB;
         mDisplayMetrics = displayMetrics;
@@ -80,7 +84,7 @@ public class OneCameraManagerImpl extends OneCameraManager {
                         CameraCharacteristics characteristics = mCameraManager
                                 .getCameraCharacteristics(device.getId());
                         // TODO: Set boolean based on whether HDR+ is enabled.
-                        OneCamera oneCamera = OneCameraCreator.create(useHdr, device,
+                        OneCamera oneCamera = OneCameraCreator.create(mContext, useHdr, device,
                                 characteristics, pictureSize, mMaxMemoryMB, mDisplayMetrics,
                                 mSoundPlayer);
                         openCallback.onCameraOpened(oneCamera);
index 4720663..afb96b3 100644 (file)
@@ -16,6 +16,7 @@
 
 package com.android.camera.one.v2;
 
+import android.content.Context;
 import android.hardware.camera2.CameraCharacteristics;
 import android.hardware.camera2.CameraDevice;
 import android.util.DisplayMetrics;
@@ -25,7 +26,7 @@ import com.android.camera.one.OneCamera;
 import com.android.camera.util.Size;
 
 public class OneCameraCreator {
-    public static OneCamera create(boolean useHdr, CameraDevice device,
+    public static OneCamera create(Context context, boolean useHdr, CameraDevice device,
             CameraCharacteristics characteristics, Size pictureSize, int maxMemoryMB,
             DisplayMetrics displayMetrics, SoundPlayer soundPlayer) {
         // TODO: Might want to switch current camera to vendor HDR.