take_picture_snapshot GestureAction

pull/1030/head
EzequielAdrianM 4 years ago
parent b5c82cf253
commit 65fced4013
  1. 16
      cameraview/src/main/java/com/otaliastudios/cameraview/CameraListener.java
  2. 29
      cameraview/src/main/java/com/otaliastudios/cameraview/CameraView.java
  3. 26
      cameraview/src/main/res/values/attrs.xml
  4. 15
      demo/src/main/kotlin/com/otaliastudios/cameraview/demo/CameraActivity.kt

@ -168,21 +168,5 @@ public abstract class CameraListener {
*/
@UiThread
public void onShutter() {}
/**
* Notifies that a finger gesture just triggered a swipe left event.
* This can be used to exchange between different filters or to
* swap between front and back cameras.
*/
@UiThread
public void onSwipeLeft() {}
/**
* Notifies that a finger gesture just triggered a swipe right event.
* This can be used to exchange between different filters or to
* swap between front and back cameras.
*/
@UiThread
public void onSwipeRight() {}
}

@ -152,8 +152,6 @@ public class CameraView extends FrameLayout implements LifecycleObserver {
@VisibleForTesting PinchGestureFinder mPinchGestureFinder;
@VisibleForTesting TapGestureFinder mTapGestureFinder;
@VisibleForTesting ScrollGestureFinder mScrollGestureFinder;
private float x1,x2;
static final int MIN_SWIPE_DISTANCE = 150;
// Views
@VisibleForTesting GridLinesLayout mGridLinesLayout;
@ -657,22 +655,6 @@ public class CameraView extends FrameLayout implements LifecycleObserver {
onGesture(mTapGestureFinder, options);
}
if(event.getAction() == MotionEvent.ACTION_DOWN) x1 = event.getX();
if(event.getAction() == MotionEvent.ACTION_UP) {
x2 = event.getX();
float deltaX = x2 - x1;
if(deltaX > MIN_SWIPE_DISTANCE) {
for (CameraListener listener : mListeners) {
listener.onSwipeRight();
}
}
if (deltaX < MIN_SWIPE_DISTANCE) {
for (CameraListener listener : mListeners) {
listener.onSwipeLeft();
}
}
}
return true;
}
@ -2250,9 +2232,14 @@ public class CameraView extends FrameLayout implements LifecycleObserver {
if (shouldPlaySound && mPlaySounds) {
playSound(MediaActionSound.SHUTTER_CLICK);
}
for (CameraListener listener : mListeners) {
listener.onShutter();
}
mUiHandler.post(new Runnable() {
@Override
public void run() {
for (CameraListener listener : mListeners) {
listener.onShutter();
}
}
});
}
@Override

@ -40,36 +40,38 @@
<enum name="none" value="0" />
<enum name="autoFocus" value="1" />
<enum name="takePicture" value="2" />
<enum name="takePictureSnapshot" value="3" />
</attr>
<attr name="cameraGestureLongTap" format="enum">
<enum name="none" value="0" />
<enum name="autoFocus" value="1" />
<enum name="takePicture" value="2" />
<enum name="takePictureSnapshot" value="3" />
</attr>
<attr name="cameraGesturePinch" format="enum">
<enum name="none" value="0" />
<enum name="zoom" value="3" />
<enum name="exposureCorrection" value="4" />
<enum name="filterControl1" value="5" />
<enum name="filterControl2" value="6" />
<enum name="zoom" value="4" />
<enum name="exposureCorrection" value="5" />
<enum name="filterControl1" value="6" />
<enum name="filterControl2" value="7" />
</attr>
<attr name="cameraGestureScrollHorizontal" format="enum">
<enum name="none" value="0" />
<enum name="zoom" value="3" />
<enum name="exposureCorrection" value="4" />
<enum name="filterControl1" value="5" />
<enum name="filterControl2" value="6" />
<enum name="zoom" value="4" />
<enum name="exposureCorrection" value="5" />
<enum name="filterControl1" value="6" />
<enum name="filterControl2" value="7" />
</attr>
<attr name="cameraGestureScrollVertical" format="enum">
<enum name="none" value="0" />
<enum name="zoom" value="3" />
<enum name="exposureCorrection" value="4" />
<enum name="filterControl1" value="5" />
<enum name="filterControl2" value="6" />
<enum name="zoom" value="4" />
<enum name="exposureCorrection" value="5" />
<enum name="filterControl1" value="6" />
<enum name="filterControl2" value="7" />
</attr>
<attr name="cameraEngine" format="enum">

@ -221,21 +221,6 @@ class CameraActivity : AppCompatActivity(), View.OnClickListener, OptionView.Cal
super.onZoomChanged(newValue, bounds, fingers)
message("Zoom:$newValue", false)
}
override fun onShutter() {
super.onShutter()
LOG.w("Shutter Triggered!")
}
override fun onSwipeLeft() {
super.onSwipeLeft()
LOG.w("Swipe Left!")
}
override fun onSwipeRight() {
super.onSwipeRight()
LOG.w("Swipe Right!")
}
}
override fun onClick(view: View) {

Loading…
Cancel
Save