diff --git a/app/src/main/java/fr/free/nrw/commons/review/ReviewActivity.java b/app/src/main/java/fr/free/nrw/commons/review/ReviewActivity.java
index 54d0891bcb..3b751202e8 100644
--- a/app/src/main/java/fr/free/nrw/commons/review/ReviewActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/review/ReviewActivity.java
@@ -1,12 +1,15 @@
package fr.free.nrw.commons.review;
+import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
+import android.widget.TextView;
+import com.facebook.drawee.view.SimpleDraweeView;
import com.google.android.material.navigation.NavigationView;
import com.viewpagerindicator.CirclePageIndicator;
@@ -20,6 +23,7 @@
import butterknife.ButterKnife;
import fr.free.nrw.commons.Media;
import fr.free.nrw.commons.R;
+import fr.free.nrw.commons.Utils;
import fr.free.nrw.commons.auth.AuthenticatedActivity;
import fr.free.nrw.commons.mwapi.MediaResult;
import fr.free.nrw.commons.mwapi.MediaWikiApi;
@@ -33,30 +37,41 @@
public class ReviewActivity extends AuthenticatedActivity {
+ public ReviewPagerAdapter reviewPagerAdapter;
+ public ReviewController reviewController;
+ @BindView(R.id.reviewPagerIndicator)
+ public CirclePageIndicator pagerIndicator;
@BindView(R.id.toolbar)
Toolbar toolbar;
@BindView(R.id.navigation_view)
NavigationView navigationView;
@BindView(R.id.drawer_layout)
DrawerLayout drawerLayout;
-
@BindView(R.id.reviewPager)
ReviewViewPager reviewPager;
-
@BindView(R.id.skip_image)
Button skip_image_button;
+ @BindView(R.id.imageView)
+ SimpleDraweeView simpleDraweeView;
+ @BindView(R.id.progressBar)
+ ProgressBar progressBar;
+ @BindView(R.id.imageCaption)
+ TextView imageCaption;
+ @Inject
+ MediaWikiApi mwApi;
- @Inject MediaWikiApi mwApi;
+ /**
+ * Consumers should be simply using this method to use this activity.
+ *
+ * @param context
+ * @param title Page title
+ */
+ public static void startYourself(Context context, String title) {
+ Intent reviewActivity = new Intent(context, ReviewActivity.class);
+ context.startActivity(reviewActivity);
+ }
@Inject
ReviewHelper reviewHelper;
-
- public ReviewPagerAdapter reviewPagerAdapter;
-
- public ReviewController reviewController;
-
- @BindView(R.id.reviewPagerIndicator)
- public CirclePageIndicator pagerIndicator;
-
private CompositeDisposable compositeDisposable = new CompositeDisposable();
@@ -82,20 +97,16 @@ protected void onCreate(Bundle savedInstanceState) {
reviewPager.setAdapter(reviewPagerAdapter);
reviewPagerAdapter.getItem(0);
pagerIndicator.setViewPager(reviewPager);
+ progressBar.setVisibility(View.VISIBLE);
runRandomizer(); //Run randomizer whenever everything is ready so that a first random image will be added
skip_image_button.setOnClickListener(view -> runRandomizer());
}
-
-
+ @SuppressLint("CheckResult")
public boolean runRandomizer() {
- ProgressBar progressBar = reviewPagerAdapter.reviewImageFragments[reviewPager.getCurrentItem()].progressBar;
- if (progressBar != null) {
- progressBar.setVisibility(View.VISIBLE);
- }
-
+ progressBar.setVisibility(View.VISIBLE);
reviewPager.setCurrentItem(0);
compositeDisposable.add(reviewHelper.getRandomMedia()
.map(Media::getFilename)
@@ -105,18 +116,22 @@ public boolean runRandomizer() {
return true;
}
+ @SuppressLint("CheckResult")
private void updateImage(String fileName) {
if (fileName.length() == 0) {
ViewUtil.showShortSnackbar(drawerLayout, R.string.error_review);
return;
}
+ simpleDraweeView.setImageURI(Utils.makeThumbBaseUrl(fileName));
reviewController.onImageRefreshed(fileName); //file name is updated
compositeDisposable.add(reviewHelper.getFirstRevisionOfFile("File:" + fileName)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(revision -> {
reviewController.firstRevision = revision;
- reviewPagerAdapter.updateFileInformation(fileName, revision);
+ reviewPagerAdapter.updateFileInformation(fileName);
+ ((TextView) imageCaption).setText(fileName + " is uploaded by: " + revision.getUser());
+ progressBar.setVisibility(View.GONE);
}));
reviewPager.setCurrentItem(0);
compositeDisposable.add(Observable.fromCallable(() -> {
@@ -148,14 +163,4 @@ public void swipeToNext() {
runRandomizer();
}
}
-
- /**
- * Consumers should be simply using this method to use this activity.
- * @param context
- * @param title Page title
- */
- public static void startYourself(Context context, String title) {
- Intent reviewActivity = new Intent(context, ReviewActivity.class);
- context.startActivity(reviewActivity);
- }
}
diff --git a/app/src/main/java/fr/free/nrw/commons/review/ReviewImageFragment.java b/app/src/main/java/fr/free/nrw/commons/review/ReviewImageFragment.java
index 31814a2e16..06f5d92a55 100644
--- a/app/src/main/java/fr/free/nrw/commons/review/ReviewImageFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/review/ReviewImageFragment.java
@@ -11,10 +11,7 @@
import android.widget.ProgressBar;
import android.widget.TextView;
-import com.facebook.drawee.view.SimpleDraweeView;
-
import fr.free.nrw.commons.R;
-import fr.free.nrw.commons.Utils;
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment;
import fr.free.nrw.commons.media.model.MwQueryPage;
@@ -30,28 +27,20 @@ public class ReviewImageFragment extends CommonsDaggerSupportFragment {
private String catString;
private View textViewQuestionContext;
- private View imageCaption;
private View textViewQuestion;
- private SimpleDraweeView simpleDraweeView;
private Button yesButton;
private Button noButton;
+
public ProgressBar progressBar;
private MwQueryPage.Revision revision;
- public void update(int position, String fileName, MwQueryPage.Revision revision) {
+ public void update(int position, String fileName) {
this.position = position;
this.fileName = fileName;
- this.revision = revision;
-
- fillImageCaption();
- if (simpleDraweeView != null) {
- simpleDraweeView.setImageURI(Utils.makeThumbBaseUrl(fileName));
- progressBar.setVisibility(View.GONE);
- }
}
public void updateCategories(Iterable