diff options
Diffstat (limited to 'src/com/android/camera/util/CameraUtil.java')
-rw-r--r-- | src/com/android/camera/util/CameraUtil.java | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/src/com/android/camera/util/CameraUtil.java b/src/com/android/camera/util/CameraUtil.java index 6527649cf..a83714f6a 100644 --- a/src/com/android/camera/util/CameraUtil.java +++ b/src/com/android/camera/util/CameraUtil.java @@ -1226,13 +1226,30 @@ public class CameraUtil { public static boolean isZoomSupported(CameraCharacteristics[] characteristics, List<Integer> characteristicsIndex) { - boolean supported = true; + for (int i = 0; i < characteristicsIndex.size(); i++) { + if (!isZoomSupported(characteristics[characteristicsIndex.get(i)])) + return false; + } + return true; + } + public static boolean isZoomSupported(CameraCharacteristics characteristic) { + return characteristic.get(CameraCharacteristics + .SCALER_AVAILABLE_MAX_DIGITAL_ZOOM) > 1f; + } + + public static boolean isAutoFocusSupported(CameraCharacteristics[] characteristics, List<Integer> + characteristicsIndex) { for (int i = 0; i < characteristicsIndex.size(); i++) { - if (characteristics[characteristicsIndex.get(i)].get(CameraCharacteristics - .SCALER_AVAILABLE_MAX_DIGITAL_ZOOM) <= 1f) + if (!isAutoFocusSupported(characteristics[characteristicsIndex.get(i)])) return false; } - return supported; + return true; + } + + public static boolean isAutoFocusSupported(CameraCharacteristics characteristic) { + Integer maxAfRegions = characteristic.get( + CameraCharacteristics.CONTROL_MAX_REGIONS_AF); + return maxAfRegions != null && maxAfRegions > 0; } } |