aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Ning <chineseperson5@gmail.com>2020-07-14 14:45:21 +0000
committerAlex Ning <chineseperson5@gmail.com>2020-07-14 14:45:21 +0000
commit67cb832c46895193c85a2b9d1b5c95873588ad26 (patch)
tree1210bfe670205550f5f26db034aecbf7f1edef1a
parent19c2d0b9794b1b045a2015769567e6ddf6a5fbfe (diff)
downloadinfinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.tar
infinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.tar.gz
infinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.tar.bz2
infinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.tar.lz
infinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.tar.xz
infinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.tar.zst
infinity-for-reddit-67cb832c46895193c85a2b9d1b5c95873588ad26.zip
Replace Hauler with Slidr to avoid weird behaviour in SubsamplingScaleImageView.
-rw-r--r--app/build.gradle1
-rw-r--r--app/src/main/AndroidManifest.xml6
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImageOrGifActivity.java15
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImgurMediaActivity.java13
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewVideoActivity.java13
-rw-r--r--app/src/main/res/layout/activity_view_image_or_gif.xml77
-rw-r--r--app/src/main/res/layout/activity_view_imgur_media.xml71
-rw-r--r--app/src/main/res/layout/activity_view_video.xml39
-rw-r--r--app/src/main/res/values/styles.xml17
9 files changed, 98 insertions, 154 deletions
diff --git a/app/build.gradle b/app/build.gradle
index fced4802..32228199 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -93,7 +93,6 @@ dependencies {
implementation 'com.atlassian.commonmark:commonmark:0.13.1'
implementation 'com.google.code.gson:gson:2.8.6'
implementation 'me.zhanghai.android.fastscroll:library:1.1.2'
- implementation "com.thefuntasty.hauler:core:3.1.0"
// androidX startup for auto-init
implementation "androidx.startup:startup-runtime:1.0.0-alpha01"
//crashy
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b4f549ff..c42e67b7 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,7 +43,7 @@
android:name=".Activity.ViewImgurMediaActivity"
android:configChanges="orientation|screenSize|layoutDirection"
android:parentActivityName=".Activity.MainActivity"
- android:theme="@style/AppTheme.Draggable" />
+ android:theme="@style/AppTheme.SlidableWithActionBar" />
<activity
android:name=".Activity.ReportActivity"
android:label="@string/report_activity_label"
@@ -294,12 +294,12 @@
<activity
android:name=".Activity.ViewImageOrGifActivity"
android:parentActivityName=".Activity.MainActivity"
- android:theme="@style/AppTheme.Draggable" />
+ android:theme="@style/AppTheme.SlidableWithActionBar" />
<activity
android:name=".Activity.ViewVideoActivity"
android:configChanges="orientation|screenSize|layoutDirection"
android:parentActivityName=".Activity.MainActivity"
- android:theme="@style/AppTheme.Draggable" />
+ android:theme="@style/AppTheme.SlidableWithActionBar" />
<activity
android:name=".Activity.ViewPostDetailActivity"
android:parentActivityName=".Activity.MainActivity"
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImageOrGifActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImageOrGifActivity.java
index 2aa00850..0577ba2f 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImageOrGifActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImageOrGifActivity.java
@@ -42,8 +42,9 @@ import com.github.piasy.biv.loader.ImageLoader;
import com.github.piasy.biv.loader.glide.GlideImageLoader;
import com.github.piasy.biv.view.BigImageView;
import com.github.piasy.biv.view.GlideImageViewFactory;
-import com.thefuntasty.hauler.DragDirection;
-import com.thefuntasty.hauler.HaulerView;
+import com.r0adkll.slidr.Slidr;
+import com.r0adkll.slidr.model.SlidrConfig;
+import com.r0adkll.slidr.model.SlidrPosition;
import java.io.File;
@@ -77,8 +78,8 @@ public class ViewImageOrGifActivity extends AppCompatActivity implements SetAsWa
public static final String FILE_NAME_KEY = "FNK";
public static final String POST_TITLE_KEY = "PTK";
private static final int PERMISSION_REQUEST_WRITE_EXTERNAL_STORAGE = 0;
- @BindView(R.id.hauler_view_view_image_or_gif_activity)
- HaulerView mHaulerView;
+ /*@BindView(R.id.hauler_view_view_image_or_gif_activity)
+ HaulerView mHaulerView;*/
@BindView(R.id.progress_bar_view_image_or_gif_activity)
ProgressBar mProgressBar;
@BindView(R.id.image_view_view_image_or_gif_activity)
@@ -133,7 +134,7 @@ public class ViewImageOrGifActivity extends AppCompatActivity implements SetAsWa
actionBar.setHomeAsUpIndicator(upArrow);
actionBar.setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.transparentActionBarAndExoPlayerControllerColor)));
- mHaulerView.setOnDragDismissedListener(dragDirection -> finish());
+ Slidr.attach(this, new SlidrConfig.Builder().position(SlidrPosition.VERTICAL).build());
mediaDownloader = new MediaDownloaderImpl();
@@ -158,11 +159,11 @@ public class ViewImageOrGifActivity extends AppCompatActivity implements SetAsWa
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int windowHeight = displayMetrics.heightPixels;
- mHaulerView.setOnDragDismissedListener(dragDirection -> {
+ /*mHaulerView.setOnDragDismissedListener(dragDirection -> {
int slide = dragDirection == DragDirection.UP ? R.anim.slide_out_up : R.anim.slide_out_down;
finish();
overridePendingTransition(0, slide);
- });
+ });*/
mLoadErrorLinearLayout.setOnClickListener(view -> {
mProgressBar.setVisibility(View.VISIBLE);
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImgurMediaActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImgurMediaActivity.java
index 5beb5cfd..db10f445 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImgurMediaActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewImgurMediaActivity.java
@@ -20,8 +20,9 @@ import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentStatePagerAdapter;
import androidx.viewpager.widget.ViewPager;
-import com.thefuntasty.hauler.DragDirection;
-import com.thefuntasty.hauler.HaulerView;
+import com.r0adkll.slidr.Slidr;
+import com.r0adkll.slidr.model.SlidrConfig;
+import com.r0adkll.slidr.model.SlidrPosition;
import org.json.JSONArray;
import org.json.JSONException;
@@ -65,8 +66,6 @@ public class ViewImgurMediaActivity extends AppCompatActivity implements SetAsWa
public static final int IMGUR_TYPE_IMAGE = 2;
private static final String IMGUR_IMAGES_STATE = "IIS";
- @BindView(R.id.hauler_view_view_imgur_media_activity)
- HaulerView haulerView;
@BindView(R.id.progress_bar_view_imgur_media_activity)
ProgressBar progressBar;
@BindView(R.id.view_pager_view_imgur_media_activity)
@@ -129,11 +128,7 @@ public class ViewImgurMediaActivity extends AppCompatActivity implements SetAsWa
images = savedInstanceState.getParcelableArrayList(IMGUR_IMAGES_STATE);
}
- haulerView.setOnDragDismissedListener(dragDirection -> {
- int slide = dragDirection == DragDirection.UP ? R.anim.slide_out_up : R.anim.slide_out_down;
- finish();
- overridePendingTransition(0, slide);
- });
+ Slidr.attach(this, new SlidrConfig.Builder().position(SlidrPosition.VERTICAL).build());
if (images == null) {
fetchImgurMedia(imgurId);
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewVideoActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewVideoActivity.java
index d76d2c00..f9f2728b 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewVideoActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewVideoActivity.java
@@ -46,8 +46,9 @@ import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
import com.google.android.exoplayer2.upstream.DefaultHttpDataSourceFactory;
import com.google.android.exoplayer2.util.Util;
import com.google.android.material.snackbar.Snackbar;
-import com.thefuntasty.hauler.DragDirection;
-import com.thefuntasty.hauler.HaulerView;
+import com.r0adkll.slidr.Slidr;
+import com.r0adkll.slidr.model.SlidrConfig;
+import com.r0adkll.slidr.model.SlidrPosition;
import javax.inject.Inject;
import javax.inject.Named;
@@ -84,8 +85,6 @@ public class ViewVideoActivity extends AppCompatActivity {
private static final String IS_MUTE_STATE = "IMS";
private static final String VIDEO_DOWNLOAD_URL_STATE = "VDUS";
private static final String VIDEO_URI_STATE = "VUS";
- @BindView(R.id.hauler_view_view_video_activity)
- HaulerView haulerView;
@BindView(R.id.coordinator_layout_view_video_activity)
CoordinatorLayout coordinatorLayout;
@BindView(R.id.progress_bar_view_video_activity)
@@ -165,11 +164,7 @@ public class ViewVideoActivity extends AppCompatActivity {
params.rightMargin = getResources().getDimensionPixelSize(resourceId);
}
- haulerView.setOnDragDismissedListener(dragDirection -> {
- int slide = dragDirection == DragDirection.UP ? R.anim.slide_out_up : R.anim.slide_out_down;
- finish();
- overridePendingTransition(0, slide);
- });
+ Slidr.attach(this, new SlidrConfig.Builder().position(SlidrPosition.VERTICAL).build());
mediaDownloader = new MediaDownloaderImpl();
diff --git a/app/src/main/res/layout/activity_view_image_or_gif.xml b/app/src/main/res/layout/activity_view_image_or_gif.xml
index 250c5077..21dd1f4b 100644
--- a/app/src/main/res/layout/activity_view_image_or_gif.xml
+++ b/app/src/main/res/layout/activity_view_image_or_gif.xml
@@ -1,57 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
-<com.thefuntasty.hauler.HaulerView xmlns:android="http://schemas.android.com/apk/res/android"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/hauler_view_view_image_or_gif_activity"
android:layout_width="match_parent"
android:layout_height="match_parent"
- app:dragUpEnabled="true"
+ android:background="@android:color/black"
tools:application="ml.docilealligator.infinityforreddit.Activity.ViewImageActivity">
- <androidx.core.widget.NestedScrollView
+ <ProgressBar
+ android:id="@+id/progress_bar_view_image_or_gif_activity"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerInParent="true" />
+
+ <com.github.piasy.biv.view.BigImageView
+ android:id="@+id/image_view_view_image_or_gif_activity"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:fillViewport="true">
-
- <RelativeLayout
- android:layout_width="match_parent"
- android:layout_height="match_parent">
-
- <ProgressBar
- android:id="@+id/progress_bar_view_image_or_gif_activity"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerInParent="true" />
-
- <com.github.piasy.biv.view.BigImageView
- android:id="@+id/image_view_view_image_or_gif_activity"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- app:optimizeDisplay="true"
- app:tapToRetry="false"
- app:initScaleType="centerInside" />
-
- <LinearLayout
- android:id="@+id/load_image_error_linear_layout_view_image_or_gif_activity"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:visibility="gone">
+ app:optimizeDisplay="true"
+ app:tapToRetry="false"
+ app:initScaleType="centerInside" />
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_gravity="center"
- android:drawableTop="@drawable/ic_error_outline_white_24dp"
- android:fontFamily="?attr/font_family"
- android:gravity="center"
- android:text="@string/error_loading_image_tap_to_retry"
- android:textColor="@android:color/white"
- android:textSize="?attr/font_default" />
-
- </LinearLayout>
-
- </RelativeLayout>
-
- </androidx.core.widget.NestedScrollView>
+ <LinearLayout
+ android:id="@+id/load_image_error_linear_layout_view_image_or_gif_activity"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:visibility="gone">
-</com.thefuntasty.hauler.HaulerView>
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:drawableTop="@drawable/ic_error_outline_white_24dp"
+ android:fontFamily="?attr/font_family"
+ android:gravity="center"
+ android:text="@string/error_loading_image_tap_to_retry"
+ android:textColor="@android:color/white"
+ android:textSize="?attr/font_default" />
+
+ </LinearLayout>
+
+</RelativeLayout>
diff --git a/app/src/main/res/layout/activity_view_imgur_media.xml b/app/src/main/res/layout/activity_view_imgur_media.xml
index 8e17ae8b..60122cfa 100644
--- a/app/src/main/res/layout/activity_view_imgur_media.xml
+++ b/app/src/main/res/layout/activity_view_imgur_media.xml
@@ -1,54 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
-<com.thefuntasty.hauler.HaulerView xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/hauler_view_view_imgur_media_activity"
android:layout_width="match_parent"
android:layout_height="match_parent"
- app:dragUpEnabled="true"
tools:context=".Activity.ViewImgurMediaActivity">
- <androidx.core.widget.NestedScrollView
+ <ProgressBar
+ android:id="@+id/progress_bar_view_imgur_media_activity"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerInParent="true" />
+
+ <androidx.viewpager.widget.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:fillViewport="true">
-
- <RelativeLayout
- android:layout_width="match_parent"
- android:layout_height="match_parent">
-
- <ProgressBar
- android:id="@+id/progress_bar_view_imgur_media_activity"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerInParent="true" />
-
- <androidx.viewpager.widget.ViewPager
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:id="@+id/view_pager_view_imgur_media_activity" />
-
- <LinearLayout
- android:id="@+id/load_image_error_linear_layout_view_imgur_media_activity"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:visibility="gone">
+ android:id="@+id/view_pager_view_imgur_media_activity" />
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:drawableTop="@drawable/ic_error_outline_white_24dp"
- android:layout_gravity="center"
- android:gravity="center"
- android:textColor="@android:color/white"
- android:text="@string/error_loading_image_tap_to_retry"
- android:textSize="?attr/font_default"
- android:fontFamily="?attr/font_family" />
-
- </LinearLayout>
-
- </RelativeLayout>
-
- </androidx.core.widget.NestedScrollView>
+ <LinearLayout
+ android:id="@+id/load_image_error_linear_layout_view_imgur_media_activity"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:visibility="gone">
-</com.thefuntasty.hauler.HaulerView> \ No newline at end of file
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:drawableTop="@drawable/ic_error_outline_white_24dp"
+ android:layout_gravity="center"
+ android:gravity="center"
+ android:textColor="@android:color/white"
+ android:text="@string/error_loading_image_tap_to_retry"
+ android:textSize="?attr/font_default"
+ android:fontFamily="?attr/font_family" />
+
+ </LinearLayout>
+
+</RelativeLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/activity_view_video.xml b/app/src/main/res/layout/activity_view_video.xml
index 1d18f2ab..240f165b 100644
--- a/app/src/main/res/layout/activity_view_video.xml
+++ b/app/src/main/res/layout/activity_view_video.xml
@@ -1,40 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
-<com.thefuntasty.hauler.HaulerView
+<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
- android:id="@+id/hauler_view_view_video_activity"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:keepScreenOn="true"
- app:dragUpEnabled="true"
+ android:id="@+id/coordinator_layout_view_video_activity"
tools:application="ml.docilealligator.infinityforreddit.Activity.ViewVideoActivity">
- <androidx.core.widget.NestedScrollView
+ <com.google.android.exoplayer2.ui.PlayerView
+ android:id="@+id/player_view_view_video_activity"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:fillViewport="true">
+ app:controller_layout_id="@layout/exo_playback_control_view"/>
- <androidx.coordinatorlayout.widget.CoordinatorLayout
- android:id="@+id/coordinator_layout_view_video_activity"
- android:layout_width="match_parent"
- android:layout_height="match_parent">
+ <ProgressBar
+ android:id="@+id/progress_bar_view_video_activity"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:visibility="gone" />
- <com.google.android.exoplayer2.ui.PlayerView
- android:id="@+id/player_view_view_video_activity"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- app:controller_layout_id="@layout/exo_playback_control_view"/>
-
- <ProgressBar
- android:id="@+id/progress_bar_view_video_activity"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center"
- android:visibility="gone" />
-
- </androidx.coordinatorlayout.widget.CoordinatorLayout>
-
- </androidx.core.widget.NestedScrollView>
-
-</com.thefuntasty.hauler.HaulerView> \ No newline at end of file
+</androidx.coordinatorlayout.widget.CoordinatorLayout> \ No newline at end of file
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index de788275..c7db48b6 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -32,6 +32,13 @@
<item name="android:windowBackground">@android:color/transparent</item>
</style>
+ <style name="AppTheme.SlidableWithActionBar">
+ <item name="android:windowIsTranslucent">true</item>
+ <item name="android:windowTranslucentStatus">true</item>
+ <item name="android:windowBackground">@android:color/black</item>
+ <item name="android:fontFamily">?attr/font_family</item>
+ </style>
+
<style name="AppTheme.SlidableWithTranslucentWindow" parent="AppTheme.Slidable">
<item name="android:windowTranslucentStatus">true</item>
</style>
@@ -40,16 +47,6 @@
<item name="android:statusBarColor">@android:color/transparent</item>
</style>
- <style name="AppTheme.Draggable" parent="AppTheme">
- <item name="android:colorBackgroundCacheHint">@null</item>
- <item name="android:windowContentOverlay">@null</item>
- <item name="android:windowIsFloating">false</item>
- <item name="android:windowIsTranslucent">true</item>
- <item name="android:windowTranslucentStatus">true</item>
- <item name="android:windowBackground">@android:color/black</item>
- <item name="android:fontFamily">?attr/font_family</item>
- </style>
-
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.DayNight.ActionBar">
<item name="android:fontFamily">?attr/font_family</item>
</style>