diff --git a/presentation/src/main/java/org/cryptomator/presentation/util/ViewPagerWorkaround.kt b/presentation/src/main/java/org/cryptomator/presentation/util/ViewPagerWorkaround.kt new file mode 100644 index 00000000..69269bfc --- /dev/null +++ b/presentation/src/main/java/org/cryptomator/presentation/util/ViewPagerWorkaround.kt @@ -0,0 +1,32 @@ +package org.cryptomator.presentation.util + +import android.content.Context +import android.util.AttributeSet +import android.view.MotionEvent +import androidx.viewpager.widget.ViewPager + +/** + * Workaround for https://github.com/cryptomator/android/issues/429 + * Source https://github.com/Baseflow/PhotoView/issues/31#issuecomment-19803926 + */ +class ViewPagerWorkaround : ViewPager { + + constructor(context: Context) : super(context) + constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) + + override fun onTouchEvent(ev: MotionEvent?): Boolean { + return try { + super.onTouchEvent(ev) + } catch (ex: IllegalArgumentException) { + false + } + } + + override fun onInterceptTouchEvent(ev: MotionEvent?): Boolean { + return try { + super.onInterceptTouchEvent(ev) + } catch (ex: IllegalArgumentException) { + false + } + } +} diff --git a/presentation/src/main/res/layout/activity_image_preview.xml b/presentation/src/main/res/layout/activity_image_preview.xml index a25fac71..24071d41 100644 --- a/presentation/src/main/res/layout/activity_image_preview.xml +++ b/presentation/src/main/res/layout/activity_image_preview.xml @@ -6,7 +6,7 @@ android:layout_height="match_parent" android:background="@color/colorBlack"> -