X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=android%2Fsrc%2Fcom%2Fgoogle%2Fzxing%2Fclient%2Fandroid%2FCameraManager.java;h=cb33dd07ed4ebea2b8f99b874387e9682f6f7cca;hb=725cb5f61bec041796fa5abbb6614eed851d81a9;hp=70ab03fdb47239ecc1017577cf4f55bfd3bf7581;hpb=fbcd8fe0866bf564931e0cdf9d73e94e867f8669;p=zxing.git diff --git a/android/src/com/google/zxing/client/android/CameraManager.java b/android/src/com/google/zxing/client/android/CameraManager.java index 70ab03fd..cb33dd07 100755 --- a/android/src/com/google/zxing/client/android/CameraManager.java +++ b/android/src/com/google/zxing/client/android/CameraManager.java @@ -16,6 +16,8 @@ package com.google.zxing.client.android; +import com.google.zxing.ResultPoint; + import android.content.Context; import android.graphics.Point; import android.graphics.Rect; @@ -26,7 +28,6 @@ import android.util.Log; import android.view.Display; import android.view.SurfaceHolder; import android.view.WindowManager; -import com.google.zxing.ResultPoint; import java.io.IOException; @@ -118,7 +119,7 @@ final class CameraManager { if (mCamera != null && mPreviewing) { mPreviewHandler = handler; mPreviewMessage = message; - mCamera.setPreviewCallback(previewCallback); + mCamera.setOneShotPreviewCallback(previewCallback); } } @@ -175,7 +176,6 @@ final class CameraManager { */ private final Camera.PreviewCallback previewCallback = new Camera.PreviewCallback() { public void onPreviewFrame(byte[] data, Camera camera) { - camera.setPreviewCallback(null); if (mPreviewHandler != null) { Message message = mPreviewHandler.obtainMessage(mPreviewMessage, mScreenResolution.x, mScreenResolution.y, data); @@ -204,6 +204,9 @@ final class CameraManager { private void setCameraParameters() { Camera.Parameters parameters = mCamera.getParameters(); parameters.setPreviewSize(mScreenResolution.x, mScreenResolution.y); + + // Disables the built-in flash if present. Hopefully devices will honor this setting. + parameters.set("flash-mode", "off"); mCamera.setParameters(parameters); Log.v(TAG, "Setting params for preview: width " + mScreenResolution.x + " height " + mScreenResolution.y);