diff --git a/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java b/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java index f3fd9de8..650cc75d 100644 --- a/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java +++ b/cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java @@ -133,6 +133,7 @@ public class CameraView extends FrameLayout implements LifecycleObserver { private Engine mEngine; private Filter mPendingFilter; private int mFrameProcessingExecutors; + private boolean mGesturesEnabled; // Components private Handler mUiHandler; @@ -194,6 +195,7 @@ public class CameraView extends FrameLayout implements LifecycleObserver { mExperimental = a.getBoolean(R.styleable.CameraView_cameraExperimental, false); mRequestPermissions = a.getBoolean(R.styleable.CameraView_cameraRequestPermissions, DEFAULT_REQUEST_PERMISSIONS); + mGesturesEnabled = a.getBoolean(R.styleable.CameraView_cameraGesturesEnabled, true); mPreview = controls.getPreview(); mEngine = controls.getEngine(); @@ -633,7 +635,8 @@ public class CameraView extends FrameLayout implements LifecycleObserver { @Override public boolean onInterceptTouchEvent(MotionEvent ev) { - return true; // Steal our own events. + // Steal our own events if gestures are enabled + return mGesturesEnabled; } @SuppressLint("ClickableViewAccessibility") @@ -2148,6 +2151,25 @@ public class CameraView extends FrameLayout implements LifecycleObserver { return mCameraEngine.isTakingPicture(); } + /** + * If enabled all touch events are captured for gesture handling + * + * @param on true if enabled + */ + public void setGesturesEnabled(boolean on) { + mGesturesEnabled = on; + } + + /** + * Returns true if touch events are captured by the view for gesture processing, + * true by default + * + * @return boolean indicating touche events are captured + */ + public boolean getGesturesEnabled() { + return mGesturesEnabled; + } + //endregion //region Callbacks and dispatching diff --git a/cameraview/src/main/res/values/attrs.xml b/cameraview/src/main/res/values/attrs.xml index 9a27f115..1d26158a 100644 --- a/cameraview/src/main/res/values/attrs.xml +++ b/cameraview/src/main/res/values/attrs.xml @@ -36,6 +36,8 @@ + +