diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
index a52bc1217..b70f8fee8 100644
--- a/.idea/inspectionProfiles/Project_Default.xml
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -44,5 +44,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java
index dc37db26c..0ebeba283 100644
--- a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java
+++ b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java
@@ -97,12 +97,6 @@ public class CommonsApplication extends MultiDexApplication {
public static final String FEEDBACK_EMAIL_TEMPLATE_HEADER = "-- Technical information --";
- /**
- * Constants End
- */
-
- private RefWatcher refWatcher;
-
private static CommonsApplication INSTANCE;
public static CommonsApplication getInstance() {
return INSTANCE;
@@ -191,10 +185,6 @@ public class CommonsApplication extends MultiDexApplication {
Timber.plant(new Timber.DebugTree());
}
- public static boolean isRoboUnitTest() {
- return "robolectric".equals(Build.FINGERPRINT);
- }
-
private ThreadPoolService getFileLoggingThreadPool() {
return new ThreadPoolService.Builder("file-logging-thread")
.setPriority(Process.THREAD_PRIORITY_LOWEST)
@@ -230,17 +220,6 @@ public class CommonsApplication extends MultiDexApplication {
return LeakCanary.install(this);
}
- /**
- * Provides a way to get member refWatcher
- *
- * @param context Application context
- * @return application member refWatcher
- */
- public static RefWatcher getRefWatcher(Context context) {
- CommonsApplication application = (CommonsApplication) context.getApplicationContext();
- return application.refWatcher;
- }
-
/**
* clears data of current application
* @param context Application context
diff --git a/app/src/main/java/fr/free/nrw/commons/License.java b/app/src/main/java/fr/free/nrw/commons/License.java
deleted file mode 100644
index 1fea236ee..000000000
--- a/app/src/main/java/fr/free/nrw/commons/License.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package fr.free.nrw.commons;
-
-import androidx.annotation.Nullable;
-
-/**
- * represents Licence object
- */
-public class License {
- private String key;
- private String template;
- private String url;
- private String name;
-
- /**
- * Constructs a new instance of License.
- *
- * @param key license key
- * @param template license template
- * @param url license URL
- * @param name licence name
- *
- * @throws RuntimeException if License.key or Licence.template is null
- */
- public License(String key, String template, String url, String name) {
- if (key == null) {
- throw new RuntimeException("License.key must not be null");
- }
- if (template == null) {
- throw new RuntimeException("License.template must not be null");
- }
- this.key = key;
- this.template = template;
- this.url = url;
- this.name = name;
- }
-
- /**
- * Gets the license key.
- * @return license key as a String.
- */
- public String getKey() {
- return key;
- }
-
- /**
- * Gets the license template.
- * @return license template as a String.
- */
- public String getTemplate() {
- return template;
- }
-
- /**
- * Gets the license name. If name is null, return license key.
- * @return license name as string. if name null, license key as String
- */
- public String getName() {
- if (name == null) {
- // hack
- return getKey();
- } else {
- return name;
- }
- }
-
- /**
- * Gets the license URL
- *
- * @param language license language
- * @return URL
- */
- public @Nullable String getUrl(String language) {
- if (url == null) {
- return null;
- } else {
- return url.replace("$lang", language);
- }
- }
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/MvpView.java b/app/src/main/java/fr/free/nrw/commons/MvpView.java
index 7485b2aaf..d8eb6c6ed 100644
--- a/app/src/main/java/fr/free/nrw/commons/MvpView.java
+++ b/app/src/main/java/fr/free/nrw/commons/MvpView.java
@@ -4,5 +4,5 @@ package fr.free.nrw.commons;
* Base interface for all the views
*/
public interface MvpView {
- void showMessage(String message);
+
}
diff --git a/app/src/main/java/fr/free/nrw/commons/ViewHolder.java b/app/src/main/java/fr/free/nrw/commons/ViewHolder.java
deleted file mode 100644
index 7181d85cc..000000000
--- a/app/src/main/java/fr/free/nrw/commons/ViewHolder.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package fr.free.nrw.commons;
-
-import android.content.Context;
-
-public interface ViewHolder {
- void bindModel(Context context, T model);
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.java b/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.java
index 46005d006..53cfe8d0f 100644
--- a/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.java
+++ b/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.java
@@ -1,9 +1,7 @@
package fr.free.nrw.commons.actions;
-import org.wikipedia.csrf.CsrfTokenClient;
-import org.wikipedia.dataclient.Service;
-
import io.reactivex.Observable;
+import org.wikipedia.csrf.CsrfTokenClient;
/**
* This class acts as a Client to facilitate wiki page editing
@@ -16,14 +14,11 @@ public class PageEditClient {
private final CsrfTokenClient csrfTokenClient;
private final PageEditInterface pageEditInterface;
- private final Service service;
public PageEditClient(CsrfTokenClient csrfTokenClient,
- PageEditInterface pageEditInterface,
- Service service) {
+ PageEditInterface pageEditInterface) {
this.csrfTokenClient = csrfTokenClient;
this.pageEditInterface = pageEditInterface;
- this.service = service;
}
/**
diff --git a/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java b/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java
index f2c552a83..7ebc224d7 100644
--- a/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/auth/LoginActivity.java
@@ -1,5 +1,10 @@
package fr.free.nrw.commons.auth;
+import static android.view.KeyEvent.KEYCODE_ENTER;
+import static android.view.View.VISIBLE;
+import static android.view.inputmethod.EditorInfo.IME_ACTION_DONE;
+import static fr.free.nrw.commons.di.NetworkingModule.NAMED_COMMONS_WIKI_SITE;
+
import android.accounts.AccountAuthenticatorActivity;
import android.app.ProgressDialog;
import android.content.Context;
@@ -17,7 +22,6 @@ import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
-
import androidx.annotation.ColorRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -26,25 +30,12 @@ import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.core.app.NavUtils;
import androidx.core.content.ContextCompat;
-
-import com.google.android.material.textfield.TextInputLayout;
-
-import org.wikipedia.AppAdapter;
-import org.wikipedia.dataclient.ServiceFactory;
-import org.wikipedia.dataclient.WikiSite;
-import org.wikipedia.dataclient.mwapi.MwQueryResponse;
-import org.wikipedia.login.LoginClient;
-import org.wikipedia.login.LoginClient.LoginCallback;
-import org.wikipedia.login.LoginResult;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.OnEditorAction;
import butterknife.OnFocusChange;
+import com.google.android.material.textfield.TextInputLayout;
import fr.free.nrw.commons.BuildConfig;
import fr.free.nrw.commons.R;
import fr.free.nrw.commons.Utils;
@@ -58,16 +49,20 @@ import fr.free.nrw.commons.utils.ConfigUtils;
import fr.free.nrw.commons.utils.SystemThemeUtils;
import fr.free.nrw.commons.utils.ViewUtil;
import io.reactivex.disposables.CompositeDisposable;
+import javax.inject.Inject;
+import javax.inject.Named;
+import org.wikipedia.AppAdapter;
+import org.wikipedia.dataclient.ServiceFactory;
+import org.wikipedia.dataclient.WikiSite;
+import org.wikipedia.dataclient.mwapi.MwQueryResponse;
+import org.wikipedia.login.LoginClient;
+import org.wikipedia.login.LoginClient.LoginCallback;
+import org.wikipedia.login.LoginResult;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import timber.log.Timber;
-import static android.view.KeyEvent.KEYCODE_ENTER;
-import static android.view.View.VISIBLE;
-import static android.view.inputmethod.EditorInfo.IME_ACTION_DONE;
-import static fr.free.nrw.commons.di.NetworkingModule.NAMED_COMMONS_WIKI_SITE;
-
public class LoginActivity extends AccountAuthenticatorActivity {
@Inject
@@ -246,7 +241,6 @@ public class LoginActivity extends AccountAuthenticatorActivity {
public void performLogin() {
Timber.d("Login to start!");
final String username = usernameEdit.getText().toString();
- final String rawUsername = usernameEdit.getText().toString().trim();
final String password = passwordEdit.getText().toString();
String twoFactorCode = twoFactorEdit.getText().toString();
diff --git a/app/src/main/java/fr/free/nrw/commons/bookmarks/locations/BookmarkLocationsFragment.java b/app/src/main/java/fr/free/nrw/commons/bookmarks/locations/BookmarkLocationsFragment.java
index 21d4d7460..8eef27ad3 100644
--- a/app/src/main/java/fr/free/nrw/commons/bookmarks/locations/BookmarkLocationsFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/bookmarks/locations/BookmarkLocationsFragment.java
@@ -6,7 +6,6 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ProgressBar;
-import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -29,7 +28,6 @@ public class BookmarkLocationsFragment extends DaggerFragment {
@BindView(R.id.statusMessage) TextView statusTextView;
@BindView(R.id.loadingImagesProgressBar) ProgressBar progressBar;
@BindView(R.id.listView) RecyclerView recyclerView;
- @BindView(R.id.parentLayout) RelativeLayout parentLayout;
@Inject BookmarkLocationsController controller;
@Inject ContributionController contributionController;
diff --git a/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesController.java b/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesController.java
index abab7a1c3..2cae3bb11 100644
--- a/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesController.java
+++ b/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesController.java
@@ -54,10 +54,4 @@ public class BookmarkPicturesController {
return bookmarks.size() != currentBookmarks.size();
}
- /**
- * Cancels the requests to the API and the DB
- */
- void stop() {
- //noop
- }
}
diff --git a/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesFragment.java b/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesFragment.java
index 7070fa40b..c9a3ec4eb 100644
--- a/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesFragment.java
@@ -71,11 +71,6 @@ public class BookmarkPicturesFragment extends DaggerFragment {
initList();
}
- @Override
- public void onStop() {
- super.onStop();
- controller.stop();
- }
@Override
public void onDestroy() {
diff --git a/app/src/main/java/fr/free/nrw/commons/category/Category.java b/app/src/main/java/fr/free/nrw/commons/category/Category.java
index 8ea3c442c..2316e76b4 100644
--- a/app/src/main/java/fr/free/nrw/commons/category/Category.java
+++ b/app/src/main/java/fr/free/nrw/commons/category/Category.java
@@ -13,9 +13,6 @@ public class Category {
private Date lastUsed;
private int timesUsed;
- public Category() {
- }
-
public Category(Uri contentUri, String name, Date lastUsed, int timesUsed) {
this.contentUri = contentUri;
this.name = name;
@@ -32,15 +29,6 @@ public class Category {
return name;
}
- /**
- * Modifies name
- *
- * @param name Category name
- */
- public void setName(String name) {
- this.name = name;
- }
-
/**
* Gets last used date
*
diff --git a/app/src/main/java/fr/free/nrw/commons/category/CategoryClickedListener.java b/app/src/main/java/fr/free/nrw/commons/category/CategoryClickedListener.java
deleted file mode 100644
index df99b4060..000000000
--- a/app/src/main/java/fr/free/nrw/commons/category/CategoryClickedListener.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package fr.free.nrw.commons.category;
-
-public interface CategoryClickedListener {
- void categoryClicked(CategoryItem item);
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/category/OnCategoriesSaveHandler.java b/app/src/main/java/fr/free/nrw/commons/category/OnCategoriesSaveHandler.java
deleted file mode 100644
index 5899d5905..000000000
--- a/app/src/main/java/fr/free/nrw/commons/category/OnCategoriesSaveHandler.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package fr.free.nrw.commons.category;
-
-import java.util.List;
-
-public interface OnCategoriesSaveHandler {
- void onCategoriesSave(List categories);
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/concurrency/ThreadPoolService.java b/app/src/main/java/fr/free/nrw/commons/concurrency/ThreadPoolService.java
index f057f61b2..09a467738 100644
--- a/app/src/main/java/fr/free/nrw/commons/concurrency/ThreadPoolService.java
+++ b/app/src/main/java/fr/free/nrw/commons/concurrency/ThreadPoolService.java
@@ -1,13 +1,9 @@
package fr.free.nrw.commons.concurrency;
import androidx.annotation.NonNull;
-
-import java.util.concurrent.Callable;
import java.util.concurrent.Executor;
-import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.ThreadFactory;
-import java.util.concurrent.TimeUnit;
/**
* This class is a thread pool which provides some additional features:
@@ -36,31 +32,6 @@ public class ThreadPoolService implements Executor {
}, b.exceptionHandler);
}
- public ScheduledFuture schedule(Callable callable, long time, TimeUnit timeUnit) {
- return backgroundPool.schedule(callable, time, timeUnit);
- }
-
- public ScheduledFuture> schedule(Runnable runnable) {
- return schedule(runnable, 0, TimeUnit.SECONDS);
- }
-
- public ScheduledFuture> schedule(Runnable runnable, long time, TimeUnit timeUnit) {
- return backgroundPool.schedule(runnable, time, timeUnit);
- }
-
- public ScheduledFuture> scheduleAtFixedRate(final Runnable task, long initialDelay,
- long period, final TimeUnit timeUnit) {
- return backgroundPool.scheduleAtFixedRate(task, initialDelay, period, timeUnit);
- }
-
- public ScheduledThreadPoolExecutor executor() {
- return backgroundPool;
- }
-
- public void shutdown(){
- backgroundPool.shutdown();
- }
-
@Override
public void execute(Runnable command) {
backgroundPool.execute(command);
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionBoundaryCallback.kt b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionBoundaryCallback.kt
index 44b1a35fb..a4e620349 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionBoundaryCallback.kt
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionBoundaryCallback.kt
@@ -76,7 +76,6 @@ class ContributionBoundaryCallback @Inject constructor(
repository.save(contributions)
.subscribeOn(ioThreadScheduler)
.subscribe { longs: List? ->
- repository["last_fetch_timestamp"] = System.currentTimeMillis()
}
)
}
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionController.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionController.java
index 9e1de9736..1df5751cc 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionController.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionController.java
@@ -96,12 +96,12 @@ public class ContributionController {
public void handleActivityResult(Activity activity, int requestCode, int resultCode, Intent data) {
FilePicker.handleActivityResult(requestCode, resultCode, data, activity, new DefaultCallback() {
@Override
- public void onImagePickerError(Exception e, FilePicker.ImageSource source, int type) {
+ public void onImagePickerError() {
ViewUtil.showShortToast(activity, R.string.error_occurred_in_picking_images);
}
@Override
- public void onImagesPicked(@NonNull List imagesFiles, FilePicker.ImageSource source, int type) {
+ public void onImagesPicked(@NonNull List imagesFiles) {
Intent intent = handleImagesPicked(activity, imagesFiles);
activity.startActivity(intent);
}
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsContract.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsContract.java
index f73ce5501..d0d798581 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsContract.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsContract.java
@@ -8,8 +8,6 @@ import fr.free.nrw.commons.BasePresenter;
public class ContributionsContract {
public interface View {
-
- void showMessage(String localizedMessage);
}
public interface UserActionListener extends BasePresenter {
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java
index 1c445852d..58569cddf 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java
@@ -15,7 +15,6 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
-import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
@@ -41,7 +40,6 @@ import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient;
import fr.free.nrw.commons.nearby.NearbyController;
import fr.free.nrw.commons.nearby.NearbyNotificationCardView;
import fr.free.nrw.commons.nearby.Place;
-import fr.free.nrw.commons.settings.Prefs;
import fr.free.nrw.commons.upload.UploadService;
import fr.free.nrw.commons.utils.ConfigUtils;
import fr.free.nrw.commons.utils.DialogUtil;
@@ -109,7 +107,6 @@ public class ContributionsFragment
}
};
private boolean shouldShowMediaDetailsFragment;
- private boolean isAuthCookieAcquired;
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
@@ -197,12 +194,6 @@ public class ContributionsFragment
}
- private void setupViewForMediaDetails() {
- campaignView.setVisibility(View.GONE);
- nearbyNotificationCardView.setVisibility(View.GONE);
- ((MainActivity)getActivity()).hideTabs();
- }
-
@Override
public void onBackStackChanged() {
((MainActivity)getActivity()).initBackButton();
@@ -213,7 +204,6 @@ public class ContributionsFragment
*/
void onAuthCookieAcquired() {
// Since we call onAuthCookieAcquired method from onAttach, isAdded is still false. So don't use it
- isAuthCookieAcquired=true;
if (getActivity() != null) { // If fragment is attached to parent activity
getActivity().bindService(getUploadServiceIntent(), uploadServiceConnection, Context.BIND_AUTO_CREATE);
isUploadServiceConnected = true;
@@ -315,7 +305,6 @@ public class ContributionsFragment
} else if (shouldShowRequestPermissionRationale(Manifest.permission.ACCESS_FINE_LOCATION)
&& store.getBoolean("displayLocationPermissionForCardView", true)
&& (((MainActivity) getActivity()).viewPager.getCurrentItem() == CONTRIBUTIONS_TAB_POSITION)) {
- nearbyNotificationCardView.permissionType = NearbyNotificationCardView.PermissionType.ENABLE_LOCATION_PERMISSION;
showNearbyCardPermissionRationale();
}
}
@@ -330,7 +319,6 @@ public class ContributionsFragment
}
private void onLocationPermissionGranted() {
- nearbyNotificationCardView.permissionType = NearbyNotificationCardView.PermissionType.NO_PERMISSION_NEEDED;
locationManager.registerLocationManager();
}
@@ -432,10 +420,6 @@ public class ContributionsFragment
}
}
- @Override public void showMessage(String message) {
- Toast.makeText(getContext(), message, Toast.LENGTH_SHORT).show();
- }
-
@Override public void showCampaigns(Campaign campaign) {
if (campaign != null) {
campaignView.setCampaign(campaign);
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListContract.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListContract.java
index 55161f238..0099b0575 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListContract.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListContract.java
@@ -1,7 +1,6 @@
package fr.free.nrw.commons.contributions;
import fr.free.nrw.commons.BasePresenter;
-import java.util.List;
/**
* The contract for Contributions list View & Presenter
@@ -10,11 +9,6 @@ public class ContributionsListContract {
public interface View {
- void showWelcomeTip(boolean numberOfUploads);
-
- void showProgress(boolean shouldShow);
-
- void showNoContributionsUI(boolean shouldShow);
}
public interface UserActionListener extends BasePresenter {
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java
index e1bb1968e..d557c247d 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsListFragment.java
@@ -1,7 +1,5 @@
package fr.free.nrw.commons.contributions;
-import static android.view.View.GONE;
-import static android.view.View.VISIBLE;
import static fr.free.nrw.commons.di.NetworkingModule.NAMED_LANGUAGE_WIKI_PEDIA_WIKI_SITE;
import android.content.Context;
@@ -15,8 +13,6 @@ import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.LinearLayout;
-import android.widget.ProgressBar;
-import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.FragmentManager;
@@ -47,16 +43,12 @@ public class ContributionsListFragment extends CommonsDaggerSupportFragment impl
@BindView(R.id.contributionsList)
RecyclerView rvContributionsList;
- @BindView(R.id.loadingContributionsProgressBar)
- ProgressBar progressBar;
@BindView(R.id.fab_plus)
FloatingActionButton fabPlus;
@BindView(R.id.fab_camera)
FloatingActionButton fabCamera;
@BindView(R.id.fab_gallery)
FloatingActionButton fabGallery;
- @BindView(R.id.noContributionsYet)
- TextView noContributionsYet;
@BindView(R.id.fab_layout)
LinearLayout fab_layout;
@@ -187,26 +179,6 @@ public class ContributionsListFragment extends CommonsDaggerSupportFragment impl
}
}
- /**
- * Shows welcome message if user has no contributions yet i.e. new user.
- */
- public void showWelcomeTip(final boolean shouldShow) {
- noContributionsYet.setVisibility(shouldShow ? VISIBLE : GONE);
- }
-
- /**
- * Responsible to set progress bar invisible and visible
- *
- * @param shouldShow True when contributions list should be hidden.
- */
- public void showProgress(final boolean shouldShow) {
- progressBar.setVisibility(shouldShow ? VISIBLE : GONE);
- }
-
- public void showNoContributionsUI(final boolean shouldShow) {
- noContributionsYet.setVisibility(shouldShow ? VISIBLE : GONE);
- }
-
@Override
public void onSaveInstanceState(@NonNull Bundle outState) {
super.onSaveInstanceState(outState);
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsLocalDataSource.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsLocalDataSource.java
index 5e21940b5..f0c9b7167 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsLocalDataSource.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsLocalDataSource.java
@@ -2,14 +2,10 @@ package fr.free.nrw.commons.contributions;
import androidx.paging.DataSource.Factory;
import io.reactivex.Completable;
+import io.reactivex.Single;
import java.util.ArrayList;
import java.util.List;
-
import javax.inject.Inject;
-import javax.inject.Named;
-
-import fr.free.nrw.commons.kvstore.JsonKvStore;
-import io.reactivex.Single;
/**
* The LocalDataSource class for Contributions
@@ -17,30 +13,12 @@ import io.reactivex.Single;
class ContributionsLocalDataSource {
private final ContributionDao contributionDao;
- private final JsonKvStore defaultKVStore;
@Inject
- public ContributionsLocalDataSource(
- @Named("default_preferences") JsonKvStore defaultKVStore,
- ContributionDao contributionDao) {
- this.defaultKVStore = defaultKVStore;
+ public ContributionsLocalDataSource(ContributionDao contributionDao) {
this.contributionDao = contributionDao;
}
- /**
- * Fetch default number of contributions to be show, based on user preferences
- */
- public String getString(String key) {
- return defaultKVStore.getString(key);
- }
-
- /**
- * Fetch default number of contributions to be show, based on user preferences
- */
- public long getLong(String key) {
- return defaultKVStore.getLong(key);
- }
-
/**
* Get contribution object from cursor
* @param uri
@@ -79,11 +57,5 @@ class ContributionsLocalDataSource {
return contributionDao.save(contributionList);
}
- public void set(String key, long value) {
- defaultKVStore.putLong(key,value);
- }
- public Completable updateContribution(Contribution contribution) {
- return contributionDao.update(contribution);
- }
}
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsPresenter.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsPresenter.java
index 2cae4f04c..2537febbc 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsPresenter.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsPresenter.java
@@ -14,30 +14,26 @@ import javax.inject.Named;
public class ContributionsPresenter implements UserActionListener {
private final ContributionsRepository repository;
- private final Scheduler mainThreadScheduler;
private final Scheduler ioThreadScheduler;
private CompositeDisposable compositeDisposable;
- private ContributionsContract.View view;
@Inject
MediaDataExtractor mediaDataExtractor;
@Inject
- ContributionsPresenter(ContributionsRepository repository, @Named(CommonsApplicationModule.MAIN_THREAD) Scheduler mainThreadScheduler,@Named(CommonsApplicationModule.IO_THREAD) Scheduler ioThreadScheduler) {
+ ContributionsPresenter(ContributionsRepository repository,
+ @Named(CommonsApplicationModule.IO_THREAD) Scheduler ioThreadScheduler) {
this.repository = repository;
- this.mainThreadScheduler=mainThreadScheduler;
this.ioThreadScheduler=ioThreadScheduler;
}
@Override
public void onAttachView(ContributionsContract.View view) {
- this.view = view;
compositeDisposable=new CompositeDisposable();
}
@Override
public void onDetachView() {
- this.view = null;
compositeDisposable.clear();
}
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsRepository.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsRepository.java
index 17b004802..3453514c9 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsRepository.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsRepository.java
@@ -20,13 +20,6 @@ public class ContributionsRepository {
this.localDataSource = localDataSource;
}
- /**
- * Fetch default number of contributions to be show, based on user preferences
- */
- public String getString(String key) {
- return localDataSource.getString(key);
- }
-
/**
* Deletes a failed upload from DB
* @param contribution
@@ -53,11 +46,4 @@ public class ContributionsRepository {
return localDataSource.saveContributions(contributions);
}
- public void set(String key, long value) {
- localDataSource.set(key,value);
- }
-
- public Completable updateContribution(Contribution contribution) {
- return localDataSource.updateContribution(contribution);
- }
}
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java b/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java
index 9606abee4..5b637380a 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java
@@ -63,7 +63,6 @@ public class MainActivity extends NavigationBaseActivity implements FragmentMana
public static final int NEARBY_TAB_POSITION = 1;
public boolean isContributionsFragmentVisible = true; // False means nearby fragment is visible
- public boolean onOrientationChanged;
private Menu menu;
private MenuItem notificationsMenuItem;
@@ -80,14 +79,10 @@ public class MainActivity extends NavigationBaseActivity implements FragmentMana
initMain();
- if (savedInstanceState != null ) {
- onOrientationChanged = true; // Will be used in nearby fragment to determine significant update of map
-
- //If nearby map was visible, call on Tab Selected to call all nearby operations
- /*if (savedInstanceState.getInt("viewPagerCurrentItem") == 1) {
+ //If nearby map was visible, call on Tab Selected to call all nearby operations
+ /*if (savedInstanceState.getInt("viewPagerCurrentItem") == 1) {
((NearbyFragment)contributionsActivityPagerAdapter.getItem(1)).onTabSelected(onOrientationChanged);
}*/
- }
}
@Override
diff --git a/app/src/main/java/fr/free/nrw/commons/delete/DeleteHelper.java b/app/src/main/java/fr/free/nrw/commons/delete/DeleteHelper.java
index 3eac4908e..2e169b89c 100644
--- a/app/src/main/java/fr/free/nrw/commons/delete/DeleteHelper.java
+++ b/app/src/main/java/fr/free/nrw/commons/delete/DeleteHelper.java
@@ -37,17 +37,14 @@ public class DeleteHelper {
private final NotificationHelper notificationHelper;
private final PageEditClient pageEditClient;
private final ViewUtilWrapper viewUtil;
- private final String username;
@Inject
public DeleteHelper(NotificationHelper notificationHelper,
- @Named("commons-page-edit") PageEditClient pageEditClient,
- ViewUtilWrapper viewUtil,
- @Named("username") String username) {
+ @Named("commons-page-edit") PageEditClient pageEditClient,
+ ViewUtilWrapper viewUtil) {
this.notificationHelper = notificationHelper;
this.pageEditClient = pageEditClient;
this.viewUtil = viewUtil;
- this.username = username;
}
/**
@@ -198,13 +195,11 @@ public class DeleteHelper {
.subscribe(aBoolean -> {
if (aBoolean) {
reviewCallback.onSuccess();
- } else {
- reviewCallback.onFailure();
}
});
});
- alert.setNegativeButton(context.getString(R.string.cancel), (dialog, which) -> reviewCallback.onFailure());
+ alert.setNegativeButton(context.getString(R.string.cancel), (dialog, which) -> {});
AlertDialog d = alert.create();
d.show();
}
diff --git a/app/src/main/java/fr/free/nrw/commons/di/NetworkingModule.java b/app/src/main/java/fr/free/nrw/commons/di/NetworkingModule.java
index 495a8d01e..4d90b8ba8 100644
--- a/app/src/main/java/fr/free/nrw/commons/di/NetworkingModule.java
+++ b/app/src/main/java/fr/free/nrw/commons/di/NetworkingModule.java
@@ -204,10 +204,10 @@ public class NetworkingModule {
@Named("commons-page-edit")
@Provides
@Singleton
- public PageEditClient provideCommonsPageEditClient(@Named(NAMED_COMMONS_CSRF) CsrfTokenClient csrfTokenClient,
- @Named("commons-page-edit-service") PageEditInterface pageEditInterface,
- @Named("commons-service") Service service) {
- return new PageEditClient(csrfTokenClient, pageEditInterface, service);
+ public PageEditClient provideCommonsPageEditClient(
+ @Named(NAMED_COMMONS_CSRF) CsrfTokenClient csrfTokenClient,
+ @Named("commons-page-edit-service") PageEditInterface pageEditInterface) {
+ return new PageEditClient(csrfTokenClient, pageEditInterface);
}
@Provides
diff --git a/app/src/main/java/fr/free/nrw/commons/filepicker/DefaultCallback.java b/app/src/main/java/fr/free/nrw/commons/filepicker/DefaultCallback.java
index e8373dc6f..75ea4868d 100644
--- a/app/src/main/java/fr/free/nrw/commons/filepicker/DefaultCallback.java
+++ b/app/src/main/java/fr/free/nrw/commons/filepicker/DefaultCallback.java
@@ -7,10 +7,7 @@ package fr.free.nrw.commons.filepicker;
public abstract class DefaultCallback implements FilePicker.Callbacks {
@Override
- public void onImagePickerError(Exception e, FilePicker.ImageSource source, int type) {
+ public void onImagePickerError() {
}
- @Override
- public void onCanceled(FilePicker.ImageSource source, int type) {
- }
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/filepicker/FilePicker.java b/app/src/main/java/fr/free/nrw/commons/filepicker/FilePicker.java
index 5d168d6b1..c6699952a 100644
--- a/app/src/main/java/fr/free/nrw/commons/filepicker/FilePicker.java
+++ b/app/src/main/java/fr/free/nrw/commons/filepicker/FilePicker.java
@@ -1,5 +1,7 @@
package fr.free.nrw.commons.filepicker;
+import static fr.free.nrw.commons.filepicker.PickedFiles.singleFileList;
+
import android.app.Activity;
import android.content.ClipData;
import android.content.Context;
@@ -8,21 +10,17 @@ import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.net.Uri;
-import androidx.preference.PreferenceManager;
import android.provider.MediaStore;
import android.text.TextUtils;
-
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-
+import androidx.preference.PreferenceManager;
import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.List;
-import static fr.free.nrw.commons.filepicker.PickedFiles.singleFileList;
-
public class FilePicker implements Constants {
private static final String KEY_PHOTO_URI = "photo_uri";
@@ -83,10 +81,6 @@ public class FilePicker implements Constants {
PreferenceManager.getDefaultSharedPreferences(context).edit().putInt(KEY_TYPE, type).apply();
}
- private static int restoreType(@NonNull Context context) {
- return PreferenceManager.getDefaultSharedPreferences(context).getInt(KEY_TYPE, 0);
- }
-
/**
* Opens default galery or a available galleries picker if there is no default
*
@@ -150,14 +144,6 @@ public class FilePicker implements Constants {
} else {
onPictureReturnedFromDocuments(data, activity, callbacks);
}
- } else {
- if (requestCode == RequestCodes.PICK_PICTURE_FROM_DOCUMENTS) {
- callbacks.onCanceled(FilePicker.ImageSource.DOCUMENTS, restoreType(activity));
- } else if (requestCode == RequestCodes.PICK_PICTURE_FROM_GALLERY) {
- callbacks.onCanceled(FilePicker.ImageSource.GALLERY, restoreType(activity));
- } else {
- callbacks.onCanceled(FilePicker.ImageSource.CAMERA_IMAGE, restoreType(activity));
- }
}
}
}
@@ -186,24 +172,24 @@ public class FilePicker implements Constants {
try {
Uri photoPath = data.getData();
UploadableFile photoFile = PickedFiles.pickedExistingPicture(activity, photoPath);
- callbacks.onImagesPicked(singleFileList(photoFile), FilePicker.ImageSource.DOCUMENTS, restoreType(activity));
+ callbacks.onImagesPicked(singleFileList(photoFile));
if (configuration(activity).shouldCopyPickedImagesToPublicGalleryAppFolder()) {
PickedFiles.copyFilesInSeparateThread(activity, singleFileList(photoFile));
}
} catch (Exception e) {
e.printStackTrace();
- callbacks.onImagePickerError(e, FilePicker.ImageSource.DOCUMENTS, restoreType(activity));
+ callbacks.onImagePickerError();
}
}
private static void onPictureReturnedFromGallery(Intent data, Activity activity, @NonNull FilePicker.Callbacks callbacks) {
try {
List files = getFilesFromGalleryPictures(data, activity);
- callbacks.onImagesPicked(files, FilePicker.ImageSource.GALLERY, restoreType(activity));
+ callbacks.onImagesPicked(files);
} catch (Exception e) {
e.printStackTrace();
- callbacks.onImagePickerError(e, FilePicker.ImageSource.GALLERY, restoreType(activity));
+ callbacks.onImagePickerError();
}
}
@@ -241,14 +227,13 @@ public class FilePicker implements Constants {
files.add(photoFile);
if (photoFile == null) {
- Exception e = new IllegalStateException("Unable to get the picture returned from camera");
- callbacks.onImagePickerError(e, FilePicker.ImageSource.CAMERA_IMAGE, restoreType(activity));
+ callbacks.onImagePickerError();
} else {
if (configuration(activity).shouldCopyTakenPhotosToPublicGalleryAppFolder()) {
PickedFiles.copyFilesInSeparateThread(activity, singleFileList(photoFile));
}
- callbacks.onImagesPicked(files, FilePicker.ImageSource.CAMERA_IMAGE, restoreType(activity));
+ callbacks.onImagesPicked(files);
}
PreferenceManager.getDefaultSharedPreferences(activity)
@@ -258,7 +243,7 @@ public class FilePicker implements Constants {
.apply();
} catch (Exception e) {
e.printStackTrace();
- callbacks.onImagePickerError(e, FilePicker.ImageSource.CAMERA_IMAGE, restoreType(activity));
+ callbacks.onImagePickerError();
}
}
@@ -274,14 +259,13 @@ public class FilePicker implements Constants {
files.add(photoFile);
if (photoFile == null) {
- Exception e = new IllegalStateException("Unable to get the video returned from camera");
- callbacks.onImagePickerError(e, FilePicker.ImageSource.CAMERA_VIDEO, restoreType(activity));
+ callbacks.onImagePickerError();
} else {
if (configuration(activity).shouldCopyTakenPhotosToPublicGalleryAppFolder()) {
PickedFiles.copyFilesInSeparateThread(activity, singleFileList(photoFile));
}
- callbacks.onImagesPicked(files, FilePicker.ImageSource.CAMERA_VIDEO, restoreType(activity));
+ callbacks.onImagesPicked(files);
}
PreferenceManager.getDefaultSharedPreferences(activity)
@@ -291,7 +275,7 @@ public class FilePicker implements Constants {
.apply();
} catch (Exception e) {
e.printStackTrace();
- callbacks.onImagePickerError(e, FilePicker.ImageSource.CAMERA_VIDEO, restoreType(activity));
+ callbacks.onImagePickerError();
}
}
@@ -300,15 +284,10 @@ public class FilePicker implements Constants {
}
- public enum ImageSource {
- GALLERY, DOCUMENTS, CAMERA_IMAGE, CAMERA_VIDEO
- }
-
public interface Callbacks {
- void onImagePickerError(Exception e, FilePicker.ImageSource source, int type);
+ void onImagePickerError();
- void onImagesPicked(@NonNull List imageFiles, FilePicker.ImageSource source, int type);
+ void onImagesPicked(@NonNull List imageFiles);
- void onCanceled(FilePicker.ImageSource source, int type);
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/filepicker/UploadableFile.java b/app/src/main/java/fr/free/nrw/commons/filepicker/UploadableFile.java
index 897fc23d0..58ac8d90d 100644
--- a/app/src/main/java/fr/free/nrw/commons/filepicker/UploadableFile.java
+++ b/app/src/main/java/fr/free/nrw/commons/filepicker/UploadableFile.java
@@ -47,10 +47,6 @@ public class UploadableFile implements Parcelable {
file = (File) in.readSerializable();
}
- public Uri getContentUri() {
- return contentUri;
- }
-
public File getFile() {
return file;
}
diff --git a/app/src/main/java/fr/free/nrw/commons/kvstore/BasicKvStore.java b/app/src/main/java/fr/free/nrw/commons/kvstore/BasicKvStore.java
index 032898896..36be15f08 100644
--- a/app/src/main/java/fr/free/nrw/commons/kvstore/BasicKvStore.java
+++ b/app/src/main/java/fr/free/nrw/commons/kvstore/BasicKvStore.java
@@ -2,16 +2,9 @@ package fr.free.nrw.commons.kvstore;
import android.content.Context;
import android.content.SharedPreferences;
-
-import androidx.annotation.Nullable;
-
-import java.util.HashMap;
import java.util.HashSet;
-import java.util.Map;
import java.util.Set;
-import timber.log.Timber;
-
public class BasicKvStore implements KeyValueStore {
private static final String KEY_VERSION = "__version__";
/*
@@ -25,53 +18,6 @@ public class BasicKvStore implements KeyValueStore {
_store = context.getSharedPreferences(storeName, Context.MODE_PRIVATE);
}
- /**
- * If you don't want onVersionUpdate to be called on a fresh creation, the first version supplied for the kvstore should be set to 0.
- */
- public BasicKvStore(Context context, String storeName, int version) {
- this(context,storeName,version,false);
- }
-
- public BasicKvStore(Context context, String storeName, int version, boolean clearAllOnUpgrade) {
- _store = context.getSharedPreferences(storeName, Context.MODE_PRIVATE);
- int oldVersion = getInt(KEY_VERSION);
-
- if (version > oldVersion) {
- Timber.i("version updated from %s to %s, with clearFlag %b", oldVersion, version, clearAllOnUpgrade);
- onVersionUpdate(oldVersion, version, clearAllOnUpgrade);
- }
-
- if (version < oldVersion) {
- throw new IllegalArgumentException(
- "kvstore downgrade not allowed, old version:" + oldVersion + ", new version: " +
- version);
- }
- //Keep this statement at the end so that clearing of store does not cause version also to get removed.
- putIntInternal(KEY_VERSION, version);
- }
-
- public void onVersionUpdate(int oldVersion, int version, boolean clearAllFlag) {
- if(clearAllFlag) {
- clearAll();
- }
- }
-
- public Set getKeySet() {
- Map allContents = new HashMap<>(_store.getAll());
- allContents.remove(KEY_VERSION);
- return allContents.keySet();
- }
-
- @Nullable
- public Map getAll() {
- Map allContents = _store.getAll();
- if (allContents == null || allContents.size() == 0) {
- return null;
- }
- allContents.remove(KEY_VERSION);
- return new HashMap<>(allContents);
- }
-
@Override
public String getString(String key) {
return getString(key, null);
@@ -82,11 +28,6 @@ public class BasicKvStore implements KeyValueStore {
return getBoolean(key, false);
}
- @Override
- public long getLong(String key) {
- return getLong(key, 0);
- }
-
@Override
public int getInt(String key) {
return getInt(key, 0);
@@ -102,24 +43,11 @@ public class BasicKvStore implements KeyValueStore {
return _store.getBoolean(key, defaultValue);
}
- @Override
- public long getLong(String key, long defaultValue) {
- return _store.getLong(key, defaultValue);
- }
-
@Override
public int getInt(String key, int defaultValue) {
return _store.getInt(key, defaultValue);
}
- public void putAllStrings(Map keyValuePairs) {
- SharedPreferences.Editor editor = _store.edit();
- for (Map.Entry keyValuePair : keyValuePairs.entrySet()) {
- putString(editor, keyValuePair.getKey(), keyValuePair.getValue(), false);
- }
- editor.apply();
- }
-
@Override
public void putString(String key, String value) {
SharedPreferences.Editor editor = _store.edit();
@@ -143,14 +71,6 @@ public class BasicKvStore implements KeyValueStore {
editor.apply();
}
- @Override
- public void putLong(String key, long value) {
- assertKeyNotReserved(key);
- SharedPreferences.Editor editor = _store.edit();
- editor.putLong(key, value);
- editor.apply();
- }
-
@Override
public void putInt(String key, int value) {
assertKeyNotReserved(key);
@@ -178,13 +98,6 @@ public class BasicKvStore implements KeyValueStore {
putIntInternal(KEY_VERSION, version);
}
- @Override
- public void clearAllWithVersion() {
- SharedPreferences.Editor editor = _store.edit();
- editor.clear();
- editor.apply();
- }
-
private void putIntInternal(String key, int value) {
SharedPreferences.Editor editor = _store.edit();
editor.putInt(key, value);
@@ -197,14 +110,6 @@ public class BasicKvStore implements KeyValueStore {
}
}
- public void registerChangeListener(SharedPreferences.OnSharedPreferenceChangeListener l) {
- _store.registerOnSharedPreferenceChangeListener(l);
- }
-
- public void unregisterChangeListener(SharedPreferences.OnSharedPreferenceChangeListener l) {
- _store.unregisterOnSharedPreferenceChangeListener(l);
- }
-
public Set getStringSet(String key){
return _store.getStringSet(key, new HashSet<>());
}
@@ -212,4 +117,4 @@ public class BasicKvStore implements KeyValueStore {
public void putStringSet(String key,Set value){
_store.edit().putStringSet(key,value).apply();
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/kvstore/JsonKvStore.java b/app/src/main/java/fr/free/nrw/commons/kvstore/JsonKvStore.java
index d612880d9..40b2dab2e 100644
--- a/app/src/main/java/fr/free/nrw/commons/kvstore/JsonKvStore.java
+++ b/app/src/main/java/fr/free/nrw/commons/kvstore/JsonKvStore.java
@@ -1,16 +1,10 @@
package fr.free.nrw.commons.kvstore;
import android.content.Context;
-
import androidx.annotation.Nullable;
-
import com.google.gson.Gson;
import com.google.gson.JsonSyntaxException;
-import java.lang.reflect.Type;
-import java.util.HashMap;
-import java.util.Map;
-
public class JsonKvStore extends BasicKvStore {
private final Gson gson;
@@ -19,33 +13,11 @@ public class JsonKvStore extends BasicKvStore {
this.gson = gson;
}
- public JsonKvStore(Context context, String storeName, int version, Gson gson) {
- super(context, storeName, version);
- this.gson = gson;
- }
-
- public JsonKvStore(Context context, String storeName, int version, boolean clearAllOnUpgrade, Gson gson) {
- super(context, storeName, version, clearAllOnUpgrade);
- this.gson = gson;
- }
-
- public void putAllJsons(Map jsonMap) {
- Map stringsMap = new HashMap<>(jsonMap.size());
- for (Map.Entry keyValuePair : jsonMap.entrySet()) {
- String jsonString = gson.toJson(keyValuePair.getValue());
- stringsMap.put(keyValuePair.getKey(), jsonString);
- }
- putAllStrings(stringsMap);
- }
public void putJson(String key, T object) {
putString(key, gson.toJson(object));
}
- public void putJsonWithTypeInfo(String key, T object, Type type) {
- putString(key, gson.toJson(object, type));
- }
-
@Nullable
public T getJson(String key, Class clazz) {
String jsonString = getString(key);
@@ -56,13 +28,4 @@ public class JsonKvStore extends BasicKvStore {
}
}
- @Nullable
- public T getJson(String key, Type type) {
- String jsonString = getString(key);
- try {
- return gson.fromJson(jsonString, type);
- } catch (JsonSyntaxException e) {
- return null;
- }
- }
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/kvstore/KeyValueStore.java b/app/src/main/java/fr/free/nrw/commons/kvstore/KeyValueStore.java
index 46d6d8f81..06d97c094 100644
--- a/app/src/main/java/fr/free/nrw/commons/kvstore/KeyValueStore.java
+++ b/app/src/main/java/fr/free/nrw/commons/kvstore/KeyValueStore.java
@@ -5,24 +5,18 @@ public interface KeyValueStore {
boolean getBoolean(String key);
- long getLong(String key);
-
int getInt(String key);
String getString(String key, String defaultValue);
boolean getBoolean(String key, boolean defaultValue);
- long getLong(String key, long defaultValue);
-
int getInt(String key, int defaultValue);
void putString(String key, String value);
void putBoolean(String key, boolean value);
- void putLong(String key, long value);
-
void putInt(String key, int value);
boolean contains(String key);
@@ -31,5 +25,4 @@ public interface KeyValueStore {
void clearAll();
- void clearAllWithVersion();
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/location/LocationServiceManager.java b/app/src/main/java/fr/free/nrw/commons/location/LocationServiceManager.java
index a34e8d2ad..a1cb3f798 100644
--- a/app/src/main/java/fr/free/nrw/commons/location/LocationServiceManager.java
+++ b/app/src/main/java/fr/free/nrw/commons/location/LocationServiceManager.java
@@ -1,16 +1,12 @@
package fr.free.nrw.commons.location;
-import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
-import java.util.HashSet;
import java.util.List;
-import java.util.Set;
import java.util.concurrent.CopyOnWriteArrayList;
-
import timber.log.Timber;
public class LocationServiceManager implements LocationListener {
@@ -24,7 +20,6 @@ public class LocationServiceManager implements LocationListener {
//private Location lastLocationDuplicate; // Will be used for nearby card view on contributions activity
private final List locationListeners = new CopyOnWriteArrayList<>();
private boolean isLocationManagerRegistered = false;
- private Set locationExplanationDisplayed = new HashSet<>();
/**
* Constructs a new instance of LocationServiceManager.
@@ -143,7 +138,6 @@ public class LocationServiceManager implements LocationListener {
*/
public void unregisterLocationManager() {
isLocationManagerRegistered = false;
- locationExplanationDisplayed.clear();
try {
locationManager.removeUpdates(this);
} catch (SecurityException e) {
@@ -224,9 +218,7 @@ public class LocationServiceManager implements LocationListener {
public enum LocationChangeType{
LOCATION_SIGNIFICANTLY_CHANGED, //Went out of borders of nearby markers
LOCATION_SLIGHTLY_CHANGED, //User might be walking or driving
- LOCATION_MEDIUM_CHANGED, //Between slight and significant changes, will be used for nearby card view updates.
LOCATION_NOT_CHANGED,
- PERMISSION_JUST_GRANTED,
MAP_UPDATED,
SEARCH_CUSTOM_AREA
}
diff --git a/app/src/main/java/fr/free/nrw/commons/logging/FileLoggingTree.java b/app/src/main/java/fr/free/nrw/commons/logging/FileLoggingTree.java
index a2ebeec68..afd3e01c0 100644
--- a/app/src/main/java/fr/free/nrw/commons/logging/FileLoggingTree.java
+++ b/app/src/main/java/fr/free/nrw/commons/logging/FileLoggingTree.java
@@ -21,7 +21,7 @@ import timber.log.Timber;
/**
* Extends Timber's debug tree to write logs to a file
*/
-public class FileLoggingTree extends Timber.DebugTree implements LogLevelSettableTree {
+public class FileLoggingTree extends Timber.DebugTree {
private final Logger logger = LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
private int logLevel;
private final String logFileName;
@@ -41,15 +41,6 @@ public class FileLoggingTree extends Timber.DebugTree implements LogLevelSettabl
this.executor = executor;
}
- /**
- * Can be overridden to change file's log level
- * @param logLevel
- */
- @Override
- public void setLogLevel(int logLevel) {
- this.logLevel = logLevel;
- }
-
/**
* Check and log any message
* @param priority
diff --git a/app/src/main/java/fr/free/nrw/commons/logging/LogLevelSettableTree.java b/app/src/main/java/fr/free/nrw/commons/logging/LogLevelSettableTree.java
deleted file mode 100644
index 5eeca6d3e..000000000
--- a/app/src/main/java/fr/free/nrw/commons/logging/LogLevelSettableTree.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package fr.free.nrw.commons.logging;
-
-/**
- * Can be implemented to set the log level for file tree
- */
-public interface LogLevelSettableTree {
- void setLogLevel(int logLevel);
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/Caption.java b/app/src/main/java/fr/free/nrw/commons/media/Caption.java
deleted file mode 100644
index 2cb3b86e1..000000000
--- a/app/src/main/java/fr/free/nrw/commons/media/Caption.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package fr.free.nrw.commons.media;
-
-import com.google.gson.annotations.SerializedName;
-
-/**
- * Model class for parsing Captions when fetching captions using filename in MediaClient
- */
-public class Caption {
-
- /**
- * users language in which caption is written
- */
- @SerializedName("language")
- private String language;
- @SerializedName("value")
- private String value;
-
- /**
- * No args constructor for use in serialization
- */
- public Caption() {
- }
-
- /**
- * @param value
- * @param language
- */
- public Caption(String language, String value) {
- super();
- this.language = language;
- this.value = value;
- }
-
- @SerializedName("language")
- public String getLanguage() {
- return language;
- }
-
- @SerializedName("value")
- public String getValue() {
- return value;
- }
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/CommonsWikibaseItem.java b/app/src/main/java/fr/free/nrw/commons/media/CommonsWikibaseItem.java
deleted file mode 100644
index af26f0c72..000000000
--- a/app/src/main/java/fr/free/nrw/commons/media/CommonsWikibaseItem.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package fr.free.nrw.commons.media;
-
-import com.google.gson.annotations.SerializedName;
-
-import java.util.Map;
-
-
-/**
- * Represents the Wikibase item associated with a Wikimedia Commons file.
- * For instance the Wikibase item M63996 represents the Commons file "Paul Cézanne - The Pigeon Tower at Bellevue - 1936.19 - Cleveland Museum of Art.jpg"
- */
-public class CommonsWikibaseItem {
-
- @SerializedName("type")
- private String type;
- @SerializedName("id")
- private String id;
- @SerializedName("labels")
- private Map labels;
- @SerializedName("statements")
- private Object statements = null;
-
- /**
- * No args constructor for use in serialization
- */
- public CommonsWikibaseItem() {
- }
-
- /**
- * @param id
- * @param statements
- * @param labels
- * @param type
- */
- public CommonsWikibaseItem(String type, String id, Map labels, Object statements) {
- super();
- this.type = type;
- this.id = id;
- this.labels = labels;
- this.statements = statements;
- }
-
- /**
- * Ex: "mediainfo
- */
- @SerializedName("type")
- public String getType() {
- return type;
- }
-
- /**
- * @return Wikibase Id
- */
- @SerializedName("id")
- public String getId() {
- return id;
- }
-
- /**
- * @return value of captions
- */
- @SerializedName("labels")
- public Map getLabels() {
- return labels;
- }
-
- /**
- * Contains the Depicts item
- */
- @SerializedName("statements")
- public Object getStatements() {
- return statements;
- }
-
-
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailInterface.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailInterface.java
index ef9559c29..d89617bbb 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailInterface.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailInterface.java
@@ -1,6 +1,5 @@
package fr.free.nrw.commons.media;
-import io.reactivex.Observable;
import io.reactivex.Single;
import org.wikipedia.wikidata.Entities;
import retrofit2.http.GET;
@@ -11,14 +10,6 @@ import retrofit2.http.Query;
*/
public interface MediaDetailInterface {
- /**
- * Fetches entity using file name
- *
- * @param filename name of the file to be used for fetching captions
- */
- @GET("w/api.php?action=wbgetentities&props=labels&format=json&languagefallback=1&sites=commonswiki")
- Observable fetchEntitiesByFileName(@Query("languages") String language, @Query("titles") String filename);
-
/**
* Gets labels for Depictions using Entity Id from MediaWikiAPI
* @param entityId EntityId (Ex: Q81566) of the depict entity
@@ -27,11 +18,4 @@ public interface MediaDetailInterface {
@GET("/w/api.php?format=json&action=wbgetentities&props=labels&languagefallback=1")
Single getEntity(@Query("ids") String entityId);
- /**
- * Fetches caption using wikibaseIdentifier
- *
- * @param wikibaseIdentifier pageId for the media
- */
- @GET("/w/api.php?action=wbgetentities&props=labels&format=json&languagefallback=1&sites=commonswiki")
- Observable getEntityForImage(@Query("languages") String language, @Query("ids") String wikibaseIdentifier);
}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailPagerFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailPagerFragment.java
index 957f45265..9f3e2bdb6 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailPagerFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailPagerFragment.java
@@ -279,12 +279,6 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple
public void onPageScrollStateChanged(int i) {
}
- public void onDataSetChanged() {
- if (null != adapter) {
- adapter.notifyDataSetChanged();
- }
- }
-
public interface MediaDetailProvider {
Media getMediaAtPosition(int i);
diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaInterface.java b/app/src/main/java/fr/free/nrw/commons/media/MediaInterface.java
index c104235a9..efe0664f2 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/MediaInterface.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/MediaInterface.java
@@ -107,14 +107,6 @@ public interface MediaInterface {
@GET("w/api.php?format=json&action=parse&prop=text")
Single getPageHtml(@Query("page") String title);
- /**
- * Fetches caption using file name
- *
- * @param filename name of the file to be used for fetching captions
- * */
- @GET("w/api.php?action=wbgetentities&props=labels&format=json&languagefallback=1")
- Single fetchCaptionByFilename(@Query("language") String language, @Query("titles") String filename);
-
/**
* Fetches list of images from a depiction entity
* @param query depictionEntityId
diff --git a/app/src/main/java/fr/free/nrw/commons/media/MwParseResponse.java b/app/src/main/java/fr/free/nrw/commons/media/MwParseResponse.java
index c65874532..4e5a6802c 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/MwParseResponse.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/MwParseResponse.java
@@ -14,10 +14,6 @@ public class MwParseResponse extends MwResponse {
return parse;
}
- public boolean success() {
- return parse != null;
- }
-
@VisibleForTesting
protected void setParse(@Nullable MwParseResult parse) {
this.parse = parse;
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/MultiPointerGestureDetector.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/MultiPointerGestureDetector.java
index e91f47311..26cc7adec 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/MultiPointerGestureDetector.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/MultiPointerGestureDetector.java
@@ -14,20 +14,19 @@ public class MultiPointerGestureDetector {
/** The listener for receiving notifications when gestures occur. */
public interface Listener {
/** A callback called right before the gesture is about to start. */
- public void onGestureBegin(MultiPointerGestureDetector detector);
+ public void onGestureBegin();
/** A callback called each time the gesture gets updated. */
- public void onGestureUpdate(MultiPointerGestureDetector detector);
+ public void onGestureUpdate();
/** A callback called right after the gesture has finished. */
- public void onGestureEnd(MultiPointerGestureDetector detector);
+ public void onGestureEnd();
}
private static final int MAX_POINTERS = 2;
private boolean mGestureInProgress;
private int mPointerCount;
- private int mNewPointerCount;
private final int mId[] = new int[MAX_POINTERS];
private final float mStartX[] = new float[MAX_POINTERS];
private final float mStartY[] = new float[MAX_POINTERS];
@@ -76,7 +75,7 @@ public class MultiPointerGestureDetector {
private void startGesture() {
if (!mGestureInProgress) {
if (mListener != null) {
- mListener.onGestureBegin(this);
+ mListener.onGestureBegin();
}
mGestureInProgress = true;
}
@@ -87,7 +86,7 @@ public class MultiPointerGestureDetector {
if (mGestureInProgress) {
mGestureInProgress = false;
if (mListener != null) {
- mListener.onGestureEnd(this);
+ mListener.onGestureEnd();
}
}
}
@@ -110,16 +109,6 @@ public class MultiPointerGestureDetector {
return (i < count) ? i : -1;
}
- /** Gets the number of pressed pointers (fingers down). */
- private static int getPressedPointerCount(MotionEvent event) {
- int count = event.getPointerCount();
- int action = event.getActionMasked();
- if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_POINTER_UP) {
- count--;
- }
- return count;
- }
-
private void updatePointersOnTap(MotionEvent event) {
mPointerCount = 0;
for (int i = 0; i < MAX_POINTERS; i++) {
@@ -163,7 +152,7 @@ public class MultiPointerGestureDetector {
}
// notify listener
if (mGestureInProgress && mListener != null) {
- mListener.onGestureUpdate(this);
+ mListener.onGestureUpdate();
}
break;
}
@@ -174,7 +163,6 @@ public class MultiPointerGestureDetector {
case MotionEvent.ACTION_UP:
{
// restart gesture whenever the number of pointers changes
- mNewPointerCount = getPressedPointerCount(event);
stopGesture();
updatePointersOnTap(event);
if (mPointerCount > 0 && shouldStartGesture()) {
@@ -185,7 +173,6 @@ public class MultiPointerGestureDetector {
case MotionEvent.ACTION_CANCEL:
{
- mNewPointerCount = 0;
stopGesture();
reset();
break;
@@ -207,16 +194,6 @@ public class MultiPointerGestureDetector {
startGesture();
}
- /** Gets whether there is a gesture in progress */
- public boolean isGestureInProgress() {
- return mGestureInProgress;
- }
-
- /** Gets the number of pointers after the current gesture */
- public int getNewPointerCount() {
- return mNewPointerCount;
- }
-
/** Gets the number of pointers in the current gesture */
public int getPointerCount() {
return mPointerCount;
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/TransformGestureDetector.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/TransformGestureDetector.java
index 3a6baeba2..f0d5a3742 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/TransformGestureDetector.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/gestures/TransformGestureDetector.java
@@ -20,7 +20,7 @@ public class TransformGestureDetector implements MultiPointerGestureDetector.Lis
public void onGestureUpdate(TransformGestureDetector detector);
/** A callback called right after the gesture has finished. */
- public void onGestureEnd(TransformGestureDetector detector);
+ public void onGestureEnd();
}
private final MultiPointerGestureDetector mDetector;
@@ -62,23 +62,23 @@ public class TransformGestureDetector implements MultiPointerGestureDetector.Lis
}
@Override
- public void onGestureBegin(MultiPointerGestureDetector detector) {
+ public void onGestureBegin() {
if (mListener != null) {
mListener.onGestureBegin(this);
}
}
@Override
- public void onGestureUpdate(MultiPointerGestureDetector detector) {
+ public void onGestureUpdate() {
if (mListener != null) {
mListener.onGestureUpdate(this);
}
}
@Override
- public void onGestureEnd(MultiPointerGestureDetector detector) {
+ public void onGestureEnd() {
if (mListener != null) {
- mListener.onGestureEnd(this);
+ mListener.onGestureEnd();
}
}
@@ -95,21 +95,6 @@ public class TransformGestureDetector implements MultiPointerGestureDetector.Lis
mDetector.restartGesture();
}
- /** Gets whether there is a gesture in progress */
- public boolean isGestureInProgress() {
- return mDetector.isGestureInProgress();
- }
-
- /** Gets the number of pointers after the current gesture */
- public int getNewPointerCount() {
- return mDetector.getNewPointerCount();
- }
-
- /** Gets the number of pointers in the current gesture */
- public int getPointerCount() {
- return mDetector.getPointerCount();
- }
-
/** Gets the X coordinate of the pivot point */
public float getPivotX() {
return calcAverage(mDetector.getStartX(), mDetector.getPointerCount());
@@ -161,4 +146,4 @@ public class TransformGestureDetector implements MultiPointerGestureDetector.Lis
return currentAngle - startAngle;
}
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/AbstractAnimatedZoomableController.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/AbstractAnimatedZoomableController.java
index 700991b9e..9212030b3 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/AbstractAnimatedZoomableController.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/AbstractAnimatedZoomableController.java
@@ -49,7 +49,6 @@ public abstract class AbstractAnimatedZoomableController extends DefaultZoomable
* @param imagePoint 2D point in image's relative coordinate system (i.e. 0 <= x, y <= 1)
* @param viewPoint 2D point in view's absolute coordinate system
*/
- @Override
public void zoomToPoint(float scale, PointF imagePoint, PointF viewPoint) {
zoomToPoint(scale, imagePoint, viewPoint, LIMIT_ALL, 0, null);
}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/DefaultZoomableController.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/DefaultZoomableController.java
index 9c3538f05..44c0023fb 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/DefaultZoomableController.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/DefaultZoomableController.java
@@ -15,11 +15,6 @@ import java.lang.annotation.RetentionPolicy;
public class DefaultZoomableController
implements ZoomableController, TransformGestureDetector.Listener {
- /** Interface for handling call backs when the image bounds are set. */
- public interface ImageBoundsListener {
- void onImageBoundsSet(RectF imageBounds);
- }
-
@IntDef(
flag = true,
value = {LIMIT_NONE, LIMIT_TRANSLATION_X, LIMIT_TRANSLATION_Y, LIMIT_SCALE, LIMIT_ALL})
@@ -32,16 +27,10 @@ public class DefaultZoomableController
public static final int LIMIT_SCALE = 4;
public static final int LIMIT_ALL = LIMIT_TRANSLATION_X | LIMIT_TRANSLATION_Y | LIMIT_SCALE;
- private static final float EPS = 1e-3f;
-
private static final Class> TAG = DefaultZoomableController.class;
- private static final RectF IDENTITY_RECT = new RectF(0, 0, 1, 1);
-
private TransformGestureDetector mGestureDetector;
- private @Nullable ImageBoundsListener mImageBoundsListener;
-
private @Nullable Listener mListener = null;
private boolean mIsEnabled = false;
@@ -65,11 +54,6 @@ public class DefaultZoomableController
private final Matrix mActiveTransformInverse = new Matrix();
private final float[] mTempValues = new float[9];
private final RectF mTempRect = new RectF();
- private boolean mWasTransformCorrected;
-
- public static DefaultZoomableController newInstance() {
- return new DefaultZoomableController(TransformGestureDetector.newInstance());
- }
public DefaultZoomableController(TransformGestureDetector gestureDetector) {
mGestureDetector = gestureDetector;
@@ -106,74 +90,16 @@ public class DefaultZoomableController
return mIsEnabled;
}
- /** Sets whether the rotation gesture is enabled or not. */
- public void setRotationEnabled(boolean enabled) {
- mIsRotationEnabled = enabled;
- }
-
- /** Gets whether the rotation gesture is enabled or not. */
- public boolean isRotationEnabled() {
- return mIsRotationEnabled;
- }
-
- /** Sets whether the scale gesture is enabled or not. */
- public void setScaleEnabled(boolean enabled) {
- mIsScaleEnabled = enabled;
- }
-
- /** Gets whether the scale gesture is enabled or not. */
- public boolean isScaleEnabled() {
- return mIsScaleEnabled;
- }
-
- /** Sets whether the translation gesture is enabled or not. */
- public void setTranslationEnabled(boolean enabled) {
- mIsTranslationEnabled = enabled;
- }
-
- /** Gets whether the translations gesture is enabled or not. */
- public boolean isTranslationEnabled() {
- return mIsTranslationEnabled;
- }
-
- /**
- * Sets the minimum scale factor allowed.
- *
- *
Hierarchy's scaling (if any) is not taken into account.
- */
- public void setMinScaleFactor(float minScaleFactor) {
- mMinScaleFactor = minScaleFactor;
- }
-
/** Gets the minimum scale factor allowed. */
public float getMinScaleFactor() {
return mMinScaleFactor;
}
- /**
- * Sets the maximum scale factor allowed.
- *
- *
Hierarchy's scaling (if any) is not taken into account.
- */
- public void setMaxScaleFactor(float maxScaleFactor) {
- mMaxScaleFactor = maxScaleFactor;
- }
-
/** Gets the maximum scale factor allowed. */
public float getMaxScaleFactor() {
return mMaxScaleFactor;
}
- /** Sets whether gesture zooms are enabled or not. */
- public void setGestureZoomEnabled(boolean isGestureZoomEnabled) {
- mIsGestureZoomEnabled = isGestureZoomEnabled;
- }
-
- /** Gets whether gesture zooms are enabled or not. */
- public boolean isGestureZoomEnabled() {
- return mIsGestureZoomEnabled;
- }
-
/** Gets the current scale factor. */
@Override
public float getScaleFactor() {
@@ -186,60 +112,21 @@ public class DefaultZoomableController
if (!imageBounds.equals(mImageBounds)) {
mImageBounds.set(imageBounds);
onTransformChanged();
- if (mImageBoundsListener != null) {
- mImageBoundsListener.onImageBoundsSet(mImageBounds);
- }
}
}
- /** Gets the non-transformed image bounds, in view-absolute coordinates. */
- public RectF getImageBounds() {
- return mImageBounds;
- }
-
- /** Gets the transformed image bounds, in view-absolute coordinates */
- private RectF getTransformedImageBounds() {
- return mTransformedImageBounds;
- }
-
/** Sets the view bounds. */
@Override
public void setViewBounds(RectF viewBounds) {
mViewBounds.set(viewBounds);
}
- /** Gets the view bounds. */
- public RectF getViewBounds() {
- return mViewBounds;
- }
-
- /** Sets the image bounds listener. */
- public void setImageBoundsListener(@Nullable ImageBoundsListener imageBoundsListener) {
- mImageBoundsListener = imageBoundsListener;
- }
-
- /** Gets the image bounds listener. */
- public @Nullable ImageBoundsListener getImageBoundsListener() {
- return mImageBoundsListener;
- }
-
/** Returns true if the zoomable transform is identity matrix. */
@Override
public boolean isIdentity() {
return isMatrixIdentity(mActiveTransform, 1e-3f);
}
- /**
- * Returns true if the transform was corrected during the last update.
- *
- *
We should rename this method to `wasTransformedWithoutCorrection` and just return the
- * internal flag directly. However, this requires interface change and negation of meaning.
- */
- @Override
- public boolean wasTransformCorrected() {
- return mWasTransformCorrected;
- }
-
/**
* Gets the matrix that transforms image-absolute coordinates to view-absolute coordinates. The
* zoomable transformation is taken into account.
@@ -251,14 +138,6 @@ public class DefaultZoomableController
return mActiveTransform;
}
- /**
- * Gets the matrix that transforms image-relative coordinates to view-absolute coordinates. The
- * zoomable transformation is taken into account.
- */
- public void getImageRelativeToViewAbsoluteTransform(Matrix outMatrix) {
- outMatrix.setRectToRect(IDENTITY_RECT, mTransformedImageBounds, Matrix.ScaleToFit.FILL);
- }
-
/**
* Maps point from view-absolute to image-relative coordinates. This takes into account the
* zoomable transformation.
@@ -273,19 +152,6 @@ public class DefaultZoomableController
return new PointF(points[0], points[1]);
}
- /**
- * Maps point from image-relative to view-absolute coordinates. This takes into account the
- * zoomable transformation.
- */
- public PointF mapImageToView(PointF imagePoint) {
- float[] points = mTempValues;
- points[0] = imagePoint.x;
- points[1] = imagePoint.y;
- mapRelativeToAbsolute(points, points, 1);
- mActiveTransform.mapPoints(points, 0, points, 0, 1);
- return new PointF(points[0], points[1]);
- }
-
/**
* Maps array of 2D points from view-absolute to image-relative coordinates. This does NOT take
* into account the zoomable transformation. Points are represented by a float array of [x0, y0,
@@ -318,20 +184,6 @@ public class DefaultZoomableController
}
}
- /**
- * Zooms to the desired scale and positions the image so that the given image point corresponds to
- * the given view point.
- *
- * @param scale desired scale, will be limited to {min, max} scale factor
- * @param imagePoint 2D point in image's relative coordinate system (i.e. 0 <= x, y <= 1)
- * @param viewPoint 2D point in view's absolute coordinate system
- */
- public void zoomToPoint(float scale, PointF imagePoint, PointF viewPoint) {
- FLog.v(TAG, "zoomToPoint");
- calculateZoomToPointTransform(mActiveTransform, scale, imagePoint, viewPoint, LIMIT_ALL);
- onTransformChanged();
- }
-
/**
* Calculates the zoom transformation that would zoom to the desired scale and position the image
* so that the given image point corresponds to the given view point.
@@ -391,12 +243,6 @@ public class DefaultZoomableController
public void onGestureBegin(TransformGestureDetector detector) {
FLog.v(TAG, "onGestureBegin");
mPreviousTransform.set(mActiveTransform);
- onTransformBegin();
- // We only received a touch down event so far, and so we don't know yet in which direction a
- // future move event will follow. Therefore, if we can't scroll in all directions, we have to
- // assume the worst case where the user tries to scroll out of edge, which would cause
- // transformation to be corrected.
- mWasTransformCorrected = !canScrollInAllDirection();
}
@Override
@@ -408,11 +254,10 @@ public class DefaultZoomableController
mGestureDetector.restartGesture();
}
// A transformation happened, but was it without correction?
- mWasTransformCorrected = transformCorrected;
}
@Override
- public void onGestureEnd(TransformGestureDetector detector) {
+ public void onGestureEnd() {
FLog.v(TAG, "onGestureEnd");
onTransformEnd();
}
@@ -445,12 +290,6 @@ public class DefaultZoomableController
return transformCorrected;
}
- private void onTransformBegin() {
- if (mListener != null && isEnabled()) {
- mListener.onTransformBegin(mActiveTransform);
- }
- }
-
private void onTransformChanged() {
mActiveTransform.mapRect(mTransformedImageBounds, mImageBounds);
if (mListener != null && isEnabled()) {
@@ -458,12 +297,6 @@ public class DefaultZoomableController
}
}
- private void onTransformEnd() {
- if (mListener != null && isEnabled()) {
- mListener.onTransformEnd(mActiveTransform);
- }
- }
-
/**
* Keeps the scaling factor within the specified limits.
*
@@ -602,14 +435,6 @@ public class DefaultZoomableController
return true;
}
- /** Returns whether the scroll can happen in all directions. I.e. the image is not on any edge. */
- private boolean canScrollInAllDirection() {
- return mTransformedImageBounds.left < mViewBounds.left - EPS
- && mTransformedImageBounds.top < mViewBounds.top - EPS
- && mTransformedImageBounds.right > mViewBounds.right + EPS
- && mTransformedImageBounds.bottom > mViewBounds.bottom + EPS;
- }
-
@Override
public int computeHorizontalScrollRange() {
return (int) mTransformedImageBounds.width();
@@ -640,7 +465,4 @@ public class DefaultZoomableController
return (int) mViewBounds.height();
}
- public Listener getListener() {
- return mListener;
- }
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/MultiGestureListener.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/MultiGestureListener.java
deleted file mode 100644
index 05be602a7..000000000
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/MultiGestureListener.java
+++ /dev/null
@@ -1,148 +0,0 @@
-package fr.free.nrw.commons.media.zoomControllers.zoomable;
-
-import android.view.GestureDetector;
-import android.view.MotionEvent;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Gesture listener that allows multiple child listeners to be added and notified about gesture
- * events.
- *
- * NOTE: The order of the listeners is important. Listeners can consume gesture events. For
- * example, if one of the child listeners consumes {@link #onLongPress(MotionEvent)} (the listener
- * returned true), subsequent listeners will not be notified about the event any more since it has
- * been consumed.
- */
-public class MultiGestureListener extends GestureDetector.SimpleOnGestureListener {
-
- private final List mListeners = new ArrayList<>();
-
- /**
- * Adds a listener to the multi gesture listener.
- *
- *
NOTE: The order of the listeners is important since gesture events can be consumed.
- *
- * @param listener the listener to be added
- */
- public synchronized void addListener(GestureDetector.SimpleOnGestureListener listener) {
- mListeners.add(listener);
- }
-
- /**
- * Removes the given listener so that it will not be notified about future events.
- *
- *
NOTE: The order of the listeners is important since gesture events can be consumed.
- *
- * @param listener the listener to remove
- */
- public synchronized void removeListener(GestureDetector.SimpleOnGestureListener listener) {
- mListeners.remove(listener);
- }
-
- @Override
- public synchronized boolean onSingleTapUp(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onSingleTapUp(e)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized void onLongPress(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- mListeners.get(i).onLongPress(e);
- }
- }
-
- @Override
- public synchronized boolean onScroll(
- MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onScroll(e1, e2, distanceX, distanceY)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized boolean onFling(
- MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onFling(e1, e2, velocityX, velocityY)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized void onShowPress(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- mListeners.get(i).onShowPress(e);
- }
- }
-
- @Override
- public synchronized boolean onDown(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onDown(e)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized boolean onDoubleTap(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onDoubleTap(e)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized boolean onDoubleTapEvent(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onDoubleTapEvent(e)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized boolean onSingleTapConfirmed(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onSingleTapConfirmed(e)) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public synchronized boolean onContextClick(MotionEvent e) {
- final int size = mListeners.size();
- for (int i = 0; i < size; i++) {
- if (mListeners.get(i).onContextClick(e)) {
- return true;
- }
- }
- return false;
- }
-}
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/MultiZoomableControllerListener.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/MultiZoomableControllerListener.java
deleted file mode 100644
index 33268ed29..000000000
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/MultiZoomableControllerListener.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package fr.free.nrw.commons.media.zoomControllers.zoomable;
-
-import android.graphics.Matrix;
-import java.util.ArrayList;
-import java.util.List;
-
-
-public class MultiZoomableControllerListener implements ZoomableController.Listener {
-
- private final List mListeners = new ArrayList<>();
-
- @Override
- public synchronized void onTransformBegin(Matrix transform) {
- for (ZoomableController.Listener listener : mListeners) {
- listener.onTransformBegin(transform);
- }
- }
-
- @Override
- public synchronized void onTransformChanged(Matrix transform) {
- for (ZoomableController.Listener listener : mListeners) {
- listener.onTransformChanged(transform);
- }
- }
-
- @Override
- public synchronized void onTransformEnd(Matrix transform) {
- for (ZoomableController.Listener listener : mListeners) {
- listener.onTransformEnd(transform);
- }
- }
-
- public synchronized void addListener(ZoomableController.Listener listener) {
- mListeners.add(listener);
- }
-
- public synchronized void removeListener(ZoomableController.Listener listener) {
- mListeners.remove(listener);
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableController.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableController.java
index 7cf6c5d44..fd2a57f84 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableController.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableController.java
@@ -13,13 +13,6 @@ public interface ZoomableController {
/** Listener interface. */
interface Listener {
- /**
- * Notifies the view that the transform began.
- *
- * @param transform the current transform matrix
- */
- void onTransformBegin(Matrix transform);
-
/**
* Notifies the view that the transform changed.
*
@@ -27,12 +20,6 @@ public interface ZoomableController {
*/
void onTransformChanged(Matrix transform);
- /**
- * Notifies the view that the transform ended.
- *
- * @param transform the current transform matrix
- */
- void onTransformEnd(Matrix transform);
}
/**
@@ -68,14 +55,6 @@ public interface ZoomableController {
/** Returns true if the zoomable transform is identity matrix, and the controller is idle. */
boolean isIdentity();
- /**
- * Returns true if the transform was corrected during the last update.
- *
- *
This mainly happens when a gesture would cause the image to get out of limits and the
- * transform gets corrected in order to prevent that.
- */
- boolean wasTransformCorrected();
-
/** See {@link androidx.core.view.ScrollingView}. */
int computeHorizontalScrollRange();
diff --git a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableDraweeView.java b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableDraweeView.java
index 3cb2b2f91..a7c69a480 100644
--- a/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableDraweeView.java
+++ b/app/src/main/java/fr/free/nrw/commons/media/zoomControllers/zoomable/ZoomableDraweeView.java
@@ -9,10 +9,8 @@ import android.graphics.drawable.Animatable;
import android.util.AttributeSet;
import android.view.GestureDetector;
import android.view.MotionEvent;
-
import androidx.annotation.Nullable;
import androidx.core.view.ScrollingView;
-import com.facebook.common.internal.Preconditions;
import com.facebook.common.logging.FLog;
import com.facebook.drawee.controller.AbstractDraweeController;
import com.facebook.drawee.controller.BaseControllerListener;
@@ -64,16 +62,12 @@ public class ZoomableDraweeView extends DraweeView
private final ZoomableController.Listener mZoomableListener =
new ZoomableController.Listener() {
- @Override
- public void onTransformBegin(Matrix transform) {}
- @Override
+ @Override
public void onTransformChanged(Matrix transform) {
ZoomableDraweeView.this.onTransformChanged(transform);
}
- @Override
- public void onTransformEnd(Matrix transform) {}
};
private final GestureListenerWrapper mTapListenerWrapper = new GestureListenerWrapper();
@@ -118,10 +112,6 @@ public class ZoomableDraweeView extends DraweeView
mTapGestureDetector = new GestureDetector(getContext(), mTapListenerWrapper);
}
- public void setIsDialtoneEnabled(boolean isDialtoneEnabled) {
- mIsDialtoneEnabled = isDialtoneEnabled;
- }
-
/**
* Gets the original image bounds, in view-absolute coordinates.
*
@@ -153,14 +143,6 @@ public class ZoomableDraweeView extends DraweeView
outBounds.set(0, 0, getWidth(), getHeight());
}
- /** Sets a custom zoomable controller, instead of using the default one. */
- public void setZoomableController(ZoomableController zoomableController) {
- Preconditions.checkNotNull(zoomableController);
- mZoomableController.setListener(null);
- mZoomableController = zoomableController;
- mZoomableController.setListener(mZoomableListener);
- }
-
/**
* Gets the zoomable controller.
*
@@ -171,16 +153,6 @@ public class ZoomableDraweeView extends DraweeView
return mZoomableController;
}
- /**
- * Check whether the parent view can intercept touch events while zoomed. This can be used, for
- * example, to swipe between images in a view pager while zoomed.
- *
- * @return true if touch events can be intercepted
- */
- public boolean allowsTouchInterceptionWhileZoomed() {
- return mAllowTouchInterceptionWhileZoomed;
- }
-
/**
* If this is set to true, parent views can intercept touch events while the view is zoomed. For
* example, this can be used to swipe between images in a view pager while zoomed.
@@ -204,11 +176,6 @@ public class ZoomableDraweeView extends DraweeView
mTapGestureDetector.setIsLongpressEnabled(enabled);
}
- public void setZoomingEnabled(boolean zoomingEnabled) {
- mZoomingEnabled = zoomingEnabled;
- mZoomableController.setEnabled(false);
- }
-
/** Sets the image controller. */
@Override
public void setController(@Nullable DraweeController controller) {
@@ -397,4 +364,4 @@ public class ZoomableDraweeView extends DraweeView
protected ZoomableController createZoomableController() {
return AnimatedZoomableController.newInstance();
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/fr/free/nrw/commons/mwapi/UserClient.java b/app/src/main/java/fr/free/nrw/commons/mwapi/UserClient.java
index 8e88bb217..0d8bc5b92 100644
--- a/app/src/main/java/fr/free/nrw/commons/mwapi/UserClient.java
+++ b/app/src/main/java/fr/free/nrw/commons/mwapi/UserClient.java
@@ -1,19 +1,13 @@
package fr.free.nrw.commons.mwapi;
-import org.wikipedia.dataclient.mwapi.MwQueryLogEvent;
+import io.reactivex.Single;
+import java.util.Date;
+import javax.inject.Inject;
import org.wikipedia.dataclient.mwapi.MwQueryResponse;
import org.wikipedia.dataclient.mwapi.MwQueryResult;
import org.wikipedia.dataclient.mwapi.UserInfo;
import org.wikipedia.util.DateUtil;
-import java.util.Collections;
-import java.util.Date;
-
-import javax.inject.Inject;
-
-import io.reactivex.Observable;
-import io.reactivex.Single;
-
public class UserClient {
private final UserInterface userInterface;
@@ -45,15 +39,4 @@ public class UserClient {
}).single(false);
}
- public Observable logEvents(String user) {
- try {
- return userInterface.getUserLogEvents(user, Collections.emptyMap())
- .map(MwQueryResponse::query)
- .map(MwQueryResult::logevents)
- .flatMap(Observable::fromIterable);
- } catch (Throwable throwable) {
- return Observable.empty();
- }
-
- }
}
diff --git a/app/src/main/java/fr/free/nrw/commons/mwapi/UserInterface.java b/app/src/main/java/fr/free/nrw/commons/mwapi/UserInterface.java
index a8fd7e152..ae94dce1f 100644
--- a/app/src/main/java/fr/free/nrw/commons/mwapi/UserInterface.java
+++ b/app/src/main/java/fr/free/nrw/commons/mwapi/UserInterface.java
@@ -1,28 +1,13 @@
package fr.free.nrw.commons.mwapi;
-import org.wikipedia.dataclient.mwapi.MwQueryResponse;
-
-import java.util.Map;
-
-import io.reactivex.Observable;
-import retrofit2.http.GET;
-import retrofit2.http.Query;
-import retrofit2.http.QueryMap;
-
import static org.wikipedia.dataclient.Service.MW_API_PREFIX;
+import io.reactivex.Observable;
+import org.wikipedia.dataclient.mwapi.MwQueryResponse;
+import retrofit2.http.GET;
+
public interface UserInterface {
- /**
- * Gets the log events of user
- * @param user name of user without prefix
- * @param continuation continuation params returned in previous query
- * @return query response
- */
-
- @GET(MW_API_PREFIX+"action=query&list=logevents&letype=upload&leprop=title|timestamp|ids&lelimit=500")
- Observable getUserLogEvents(@Query("leuser") String user, @QueryMap Map continuation);
-
/**
* Checks to see if a user is currently blocked from Commons
*/
diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/Label.java b/app/src/main/java/fr/free/nrw/commons/nearby/Label.java
index 19c175fd8..d637d6866 100644
--- a/app/src/main/java/fr/free/nrw/commons/nearby/Label.java
+++ b/app/src/main/java/fr/free/nrw/commons/nearby/Label.java
@@ -1,16 +1,12 @@
package fr.free.nrw.commons.nearby;
-import android.os.Parcel;
-
import androidx.annotation.DrawableRes;
-
+import fr.free.nrw.commons.R;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import fr.free.nrw.commons.R;
-
/**
* See https://github.com/commons-app/apps-android-commons/issues/250
* Most common types of desc: building, house, cottage, farmhouse,
@@ -65,11 +61,6 @@ public enum Label {
this.icon = icon;
}
- Label(Parcel in) {
- this.text = in.readString();
- this.icon = in.readInt();
- }
-
/**
* Will be used for nearby filter, to determine if place type is selected or not
* @param isSelected true if user selected the place type
@@ -99,4 +90,4 @@ public enum Label {
public static List