diff --git a/app/build.gradle b/app/build.gradle
index 8d3f1593a..58d486e86 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -2,7 +2,7 @@ apply plugin: 'com.android.application'
android {
compileSdkVersion 25
- buildToolsVersion "25.0.2"
+ buildToolsVersion "25.0.3"
defaultConfig {
applicationId "com.keylesspalace.tusky"
minSdkVersion 15
@@ -37,7 +37,7 @@ dependencies {
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
- compile('com.mikepenz:materialdrawer:5.8.2@aar') {
+ compile('com.mikepenz:materialdrawer:5.9.1@aar') {
transitive = true
}
compile 'com.android.support:appcompat-v7:25.3.1'
@@ -47,22 +47,22 @@ dependencies {
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:exifinterface:25.3.1'
compile 'com.squareup.retrofit2:retrofit:2.2.0'
- compile 'com.squareup.retrofit2:converter-gson:2.1.0'
+ compile 'com.squareup.retrofit2:converter-gson:2.2.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.squareup.okhttp3:okhttp:3.7.0'
compile 'com.jakewharton.picasso:picasso2-okhttp3-downloader:1.1.0'
compile 'com.pkmmte.view:circularimageview:1.1'
- compile 'com.github.peter9870:sparkbutton:master'
+ compile 'com.github.varunest:sparkbutton:1.0.5'
compile 'com.mikhaellopez:circularfillableloaders:1.2.0'
- compile 'com.github.chrisbanes:PhotoView:1.3.1'
+ compile 'com.github.chrisbanes:PhotoView:2.0.0'
compile 'com.mikepenz:google-material-typeface:3.0.1.0.original@aar'
compile 'com.github.arimorty:floatingsearchview:2.0.4'
- compile 'com.theartofdev.edmodo:android-image-cropper:2.4.0'
- compile 'com.jakewharton:butterknife:8.4.0'
- googleCompile 'com.google.firebase:firebase-messaging:10.0.1'
- googleCompile 'com.google.firebase:firebase-crash:10.0.1'
+ compile 'com.theartofdev.edmodo:android-image-cropper:2.4.3'
+ compile 'com.jakewharton:butterknife:8.5.1'
+ googleCompile 'com.google.firebase:firebase-messaging:10.2.4'
+ googleCompile 'com.google.firebase:firebase-crash:10.2.4'
testCompile 'junit:junit:4.12'
- annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
+ annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
}
apply plugin: 'com.google.gms.google-services'
\ No newline at end of file
diff --git a/app/src/main/java/com/keylesspalace/tusky/adapter/StatusViewHolder.java b/app/src/main/java/com/keylesspalace/tusky/adapter/StatusViewHolder.java
index 1459dd4e0..1d029e86b 100644
--- a/app/src/main/java/com/keylesspalace/tusky/adapter/StatusViewHolder.java
+++ b/app/src/main/java/com/keylesspalace/tusky/adapter/StatusViewHolder.java
@@ -300,14 +300,20 @@ class StatusViewHolder extends RecyclerView.ViewHolder {
}
});
reblogButton.setEventListener(new SparkEventListener() {
- @Override
- public void onEvent(ImageView button, boolean buttonState) {
- int position = getAdapterPosition();
- if (position != RecyclerView.NO_POSITION) {
- listener.onReblog(!reblogged, position);
- }
- }
- });
+ @Override
+ public void onEvent(ImageView button, boolean buttonState) {
+ int position = getAdapterPosition();
+ if (position != RecyclerView.NO_POSITION) {
+ listener.onReblog(!reblogged, position);
+ }
+ }
+
+ @Override
+ public void onEventAnimationEnd(ImageView button, boolean buttonState) {}
+
+ @Override
+ public void onEventAnimationStart(ImageView button, boolean buttonState) {}
+ });
favouriteButton.setEventListener(new SparkEventListener() {
@Override
public void onEvent(ImageView button, boolean buttonState) {
@@ -316,6 +322,12 @@ class StatusViewHolder extends RecyclerView.ViewHolder {
listener.onFavourite(!favourited, position);
}
}
+
+ @Override
+ public void onEventAnimationEnd(ImageView button, boolean buttonState) {}
+
+ @Override
+ public void onEventAnimationStart(ImageView button, boolean buttonState) {}
});
moreButton.setOnClickListener(new View.OnClickListener() {
@Override
diff --git a/app/src/main/java/com/keylesspalace/tusky/fragment/ViewMediaFragment.java b/app/src/main/java/com/keylesspalace/tusky/fragment/ViewMediaFragment.java
index f251743fe..aa8d41b99 100644
--- a/app/src/main/java/com/keylesspalace/tusky/fragment/ViewMediaFragment.java
+++ b/app/src/main/java/com/keylesspalace/tusky/fragment/ViewMediaFragment.java
@@ -35,8 +35,13 @@ import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
+import android.widget.ImageView;
import com.keylesspalace.tusky.R;
+import com.github.chrisbanes.photoview.OnOutsidePhotoTapListener;
+import com.github.chrisbanes.photoview.OnSingleFlingListener;
+import com.github.chrisbanes.photoview.PhotoView;
+import com.github.chrisbanes.photoview.PhotoViewAttacher;
import com.squareup.picasso.Callback;
import com.squareup.picasso.Picasso;
@@ -44,17 +49,15 @@ import java.io.File;
import butterknife.BindView;
import butterknife.ButterKnife;
-import uk.co.senab.photoview.PhotoView;
-import uk.co.senab.photoview.PhotoViewAttacher;
public class ViewMediaFragment extends DialogFragment {
private PhotoViewAttacher attacher;
- private DownloadManager downloadManager;
private static final int PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE = 1;
- @BindView(R.id.view_media_image) PhotoView photoView;
+ @BindView(R.id.view_media_image)
+ PhotoView photoView;
public static ViewMediaFragment newInstance(String url) {
Bundle arguments = new Bundle();
@@ -91,24 +94,19 @@ public class ViewMediaFragment extends DialogFragment {
attacher = new PhotoViewAttacher(photoView);
// Clicking outside the photo closes the viewer.
- attacher.setOnPhotoTapListener(new PhotoViewAttacher.OnPhotoTapListener() {
+ attacher.setOnOutsidePhotoTapListener(new OnOutsidePhotoTapListener() {
@Override
- public void onPhotoTap(View view, float x, float y) {
-
- }
-
- @Override
- public void onOutsidePhotoTap() {
+ public void onOutsidePhotoTap(ImageView imageView) {
dismiss();
}
});
/* A vertical swipe motion also closes the viewer. This is especially useful when the photo
* mostly fills the screen so clicking outside is difficult. */
- attacher.setOnSingleFlingListener(new PhotoViewAttacher.OnSingleFlingListener() {
+ attacher.setOnSingleFlingListener(new OnSingleFlingListener() {
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
- float velocityY) {
+ float velocityY) {
if (Math.abs(velocityY) > Math.abs(velocityX)) {
dismiss();
return true;
@@ -154,12 +152,6 @@ public class ViewMediaFragment extends DialogFragment {
return rootView;
}
- @Override
- public void onDestroyView() {
- attacher.cleanup();
- super.onDestroyView();
- }
-
private void downloadImage(){
//Permission stuff
@@ -172,14 +164,13 @@ public class ViewMediaFragment extends DialogFragment {
PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE);
} else {
-
//download stuff
String url = getArguments().getString("url");
Uri uri = Uri.parse(url);
String filename = new File(url).getName();
- downloadManager = (DownloadManager) getContext().getSystemService(Context.DOWNLOAD_SERVICE);
+ DownloadManager downloadManager = (DownloadManager) getContext().getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(uri);
request.allowScanningByMediaScanner();
diff --git a/app/src/main/res/layout/fragment_view_media.xml b/app/src/main/res/layout/fragment_view_media.xml
index 7946b2ef4..0b97166c6 100644
--- a/app/src/main/res/layout/fragment_view_media.xml
+++ b/app/src/main/res/layout/fragment_view_media.xml
@@ -5,13 +5,16 @@
android:clickable="true"
android:layout_gravity="center"
android:background="@android:color/black">
+
-
+
\ No newline at end of file