// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/listener/SwipeFractionListener.java
// public interface SwipeFractionListener {
// 
//     void onSwipeMenuFraction(SwipeMenuLayout swipeMenuLayout, SwipeDirection direction, float fraction);
// 
// }
// 
// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/listener/SwipeSwitchListener.java
// public interface SwipeSwitchListener {
// 
//     void onSwipeMenuOpened(SwipeMenuLayout swipeMenuLayout, SwipeDirection direction);
// 
//     void onSwipeMenuClosed(SwipeMenuLayout swipeMenuLayout, SwipeDirection direction);
// 
// }
// 
// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/swiper/Swiper.java
// public abstract class Swiper {
// 
//     protected static final int BEGIN_DIRECTION = 1;
//     protected static final int END_DIRECTION = -1;
// 
//     private int direction;
//     private View menuView;
//     protected Checker mChecker;
// 
//     public Swiper(int direction, View menuView){
//         this.direction = direction;
//         this.menuView = menuView;
//         mChecker = new Checker();
//     }
// 
//     public abstract boolean isMenuOpen(final int scrollDis);
//     public abstract boolean isMenuOpenNotEqual(final int scrollDis);
//     public abstract void autoOpenMenu(OverScroller scroller, int scrollDis, int duration);
//     public abstract void autoCloseMenu(OverScroller scroller, int scrollDis, int duration);
//     public abstract Checker checkXY(int x, int y);
//     public abstract boolean isClickOnContentView(View contentView, float clickPoint);
// 
//     public boolean isNotInPlace(final int scrollDis) {
//         return scrollDis != 0;
//     }
// 
//     public int getDirection() {
//         return direction;
//     }
// 
//     public View getMenuView() {
//         return menuView;
//     }
// 
//     public int getMenuWidth(){
//         return getMenuView().getWidth();
//     }
// 
//     public int getMenuHeight(){
//         return getMenuView().getHeight();
//     }
// 
//     public static final class Checker{
//         public int x;
//         public int y;
//         public boolean shouldResetSwiper;
//     }
// 
// }


import android.content.Context;
import androidx.annotation.Nullable;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.VelocityTracker;
import android.view.View;
import android.view.ViewConfiguration;
import android.view.animation.Interpolator;
import android.widget.FrameLayout;
import android.widget.OverScroller;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.text.NumberFormat;
import java.util.Locale;
import com.omega_r.libs.omegarecyclerview.swipe_menu.listener.SwipeFractionListener;
import com.omega_r.libs.omegarecyclerview.swipe_menu.listener.SwipeSwitchListener;
import com.omega_r.libs.omegarecyclerview.swipe_menu.swiper.Swiper;
package com.omega_r.libs.omegarecyclerview.swipe_menu;





public abstract class SwipeMenuLayout extends FrameLayout {

    public static final int DEFAULT_SCROLLER_DURATION = 250;
    public static final float DEFAULT_AUTO_OPEN_PERCENT = 0.5f;
    protected float mAutoOpenPercent = DEFAULT_AUTO_OPEN_PERCENT;
    protected int mScrollerDuration = DEFAULT_SCROLLER_DURATION;

    protected int mScaledTouchSlop;
    protected int mLastX;
    protected int mLastY;
    protected int mDownX;
    protected int mDownY;
    @Nullable
    protected View mContentView;
    @Nullable
    protected Swiper mBeginSwiper;
    @Nullable
    protected Swiper mEndSwiper;
    @Nullable
    protected Swiper mCurrentSwiper;
    protected boolean shouldResetSwiper;
    protected boolean mDragging;
    protected boolean swipeEnable = true;
    protected OverScroller mScroller;
    protected Interpolator mInterpolator;
    protected VelocityTracker mVelocityTracker;
    protected int mScaledMinimumFlingVelocity;
    protected int mScaledMaximumFlingVelocity;
    protected SwipeSwitchListener mSwipeSwitchListener;
// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/listener/SwipeFractionListener.java
// public interface SwipeFractionListener {
// 
//     void onSwipeMenuFraction(SwipeMenuLayout swipeMenuLayout, SwipeDirection direction, float fraction);
// 
// }
// 
// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/listener/SwipeSwitchListener.java
// public interface SwipeSwitchListener {
// 
//     void onSwipeMenuOpened(SwipeMenuLayout swipeMenuLayout, SwipeDirection direction);
// 
//     void onSwipeMenuClosed(SwipeMenuLayout swipeMenuLayout, SwipeDirection direction);
// 
// }
// 
// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/swiper/Swiper.java
// public abstract class Swiper {
// 
//     protected static final int BEGIN_DIRECTION = 1;
//     protected static final int END_DIRECTION = -1;
// 
//     private int direction;
//     private View menuView;
//     protected Checker mChecker;
// 
//     public Swiper(int direction, View menuView){
//         this.direction = direction;
//         this.menuView = menuView;
//         mChecker = new Checker();
//     }
// 
//     public abstract boolean isMenuOpen(final int scrollDis);
//     public abstract boolean isMenuOpenNotEqual(final int scrollDis);
//     public abstract void autoOpenMenu(OverScroller scroller, int scrollDis, int duration);
//     public abstract void autoCloseMenu(OverScroller scroller, int scrollDis, int duration);
//     public abstract Checker checkXY(int x, int y);
//     public abstract boolean isClickOnContentView(View contentView, float clickPoint);
// 
//     public boolean isNotInPlace(final int scrollDis) {
//         return scrollDis != 0;
//     }
// 
//     public int getDirection() {
//         return direction;
//     }
// 
//     public View getMenuView() {
//         return menuView;
//     }
// 
//     public int getMenuWidth(){
//         return getMenuView().getWidth();
//     }
// 
//     public int getMenuHeight(){
//         return getMenuView().getHeight();
//     }
// 
//     public static final class Checker{
//         public int x;
//         public int y;
//         public boolean shouldResetSwiper;
//     }
// 
// }


// Path: omegarecyclerview/src/main/java/com/omega_r/libs/omegarecyclerview/swipe_menu/SwipeMenuLayout.java
import android.content.Context;
import androidx.annotation.Nullable;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.VelocityTracker;
import android.view.View;
import android.view.ViewConfiguration;
import android.view.animation.Interpolator;
import android.widget.FrameLayout;
import android.widget.OverScroller;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.text.NumberFormat;
import java.util.Locale;
import com.omega_r.libs.omegarecyclerview.swipe_menu.listener.SwipeFractionListener;
import com.omega_r.libs.omegarecyclerview.swipe_menu.listener.SwipeSwitchListener;
import com.omega_r.libs.omegarecyclerview.swipe_menu.swiper.Swiper;

package com.omega_r.libs.omegarecyclerview.swipe_menu;





public abstract class SwipeMenuLayout extends FrameLayout {

    public static final int DEFAULT_SCROLLER_DURATION = 250;
    public static final float DEFAULT_AUTO_OPEN_PERCENT = 0.5f;
    protected float mAutoOpenPercent = DEFAULT_AUTO_OPEN_PERCENT;
    protected int mScrollerDuration = DEFAULT_SCROLLER_DURATION;

    protected int mScaledTouchSlop;
    protected int mLastX;
    protected int mLastY;
    protected int mDownX;
    protected int mDownY;
    @Nullable
    protected View mContentView;
    @Nullable
    protected Swiper mBeginSwiper;
    @Nullable
    protected Swiper mEndSwiper;
    @Nullable
    protected Swiper mCurrentSwiper;
    protected boolean shouldResetSwiper;
    protected boolean mDragging;
    protected boolean swipeEnable = true;
    protected OverScroller mScroller;
    protected Interpolator mInterpolator;
    protected VelocityTracker mVelocityTracker;
    protected int mScaledMinimumFlingVelocity;
    protected int mScaledMaximumFlingVelocity;
    protected SwipeSwitchListener mSwipeSwitchListener;
    protected SwipeFractionListener mSwipeFractionListener;