diff --git a/src/com/hippo/ehviewer/gallery/GalleryView.java b/src/com/hippo/ehviewer/gallery/GalleryView.java index 42ac04acf..906087e32 100644 --- a/src/com/hippo/ehviewer/gallery/GalleryView.java +++ b/src/com/hippo/ehviewer/gallery/GalleryView.java @@ -180,6 +180,8 @@ public class GalleryView extends GLView implements ImageSet.ImageListener, public void onSizeUpdate(int size); public void onSlideBottom(float dx); + + public void onSlideBottomOver(); } public interface OnTapTextListener { @@ -1322,8 +1324,11 @@ public class GalleryView extends GLView implements ImageSet.ImageListener, return false; if (mDoubleTapAnimating) return false; - if (mLightnessSliding) - return false; + if (mLightnessSliding) { + if (mGalleryViewListener != null) + mGalleryViewListener.onSlideBottomOver(); + return true; + } switch (mScrollState) { case SCROLL_ANIME_LEFT: diff --git a/src/com/hippo/ehviewer/ui/GalleryActivity.java b/src/com/hippo/ehviewer/ui/GalleryActivity.java index e265d8d03..4cf039abd 100644 --- a/src/com/hippo/ehviewer/ui/GalleryActivity.java +++ b/src/com/hippo/ehviewer/ui/GalleryActivity.java @@ -282,11 +282,17 @@ public class GalleryActivity extends Activity @Override public void onSlideBottom(float dx) { - if (mLightnessScale == 0) - mLightnessScale = mMaskView.getWidth(); + if (mLightnessScale == 0) { + int w = mMaskView.getWidth(); + mLightnessScale = w > 0 ? w : 1024; + } mLightness = MathUtils.clamp(mLightness - (dx / mLightnessScale), -1.0f, 1.0f); setLightness(mLightness); + } + + @Override + public void onSlideBottomOver() { Config.setFloat(KEY_LIGHTNESS, mLightness); }