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 @@
+
+