mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 12:23:58 +01:00
* #4005 For images in set removed if user selected one image * #4005 changed code as suggested * fixed syntax * added javadoc * added more java doc * refactored to more meaningful documentation * reverted the Project.xml file * cleaned documentations a little bit
This commit is contained in:
parent
a94a28f743
commit
d0df2ffd59
5 changed files with 76 additions and 3 deletions
|
|
@ -2,6 +2,7 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="fr.free.nrw.commons">
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||
|
|
|
|||
|
|
@ -56,6 +56,8 @@ import java.util.Collections;
|
|||
import java.util.List;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import kotlin.reflect.jvm.internal.impl.load.kotlin.JvmType.Object;
|
||||
import kotlin.reflect.jvm.internal.impl.util.Checks;
|
||||
import timber.log.Timber;
|
||||
|
||||
public class UploadActivity extends BaseActivity implements UploadContract.View, UploadBaseFragment.Callback {
|
||||
|
|
@ -108,6 +110,10 @@ public class UploadActivity extends BaseActivity implements UploadContract.View,
|
|||
private Place place;
|
||||
private List<UploadableFile> uploadableFiles = Collections.emptyList();
|
||||
private int currentSelectedPosition = 0;
|
||||
/*
|
||||
Checks for if multiple files selected
|
||||
*/
|
||||
private boolean isMultipleFilesSelected = false;
|
||||
|
||||
public static final String EXTRA_FILES = "commons_image_exta";
|
||||
|
||||
|
|
@ -400,12 +406,20 @@ public class UploadActivity extends BaseActivity implements UploadContract.View,
|
|||
Timber.d("Received intent %s with action %s", intent.toString(), intent.getAction());
|
||||
|
||||
uploadableFiles = intent.getParcelableArrayListExtra(EXTRA_FILES);
|
||||
isMultipleFilesSelected = uploadableFiles.size() > 1;
|
||||
Timber.i("Received multiple upload %s", uploadableFiles.size());
|
||||
|
||||
place = intent.getParcelableExtra(PLACE_OBJECT);
|
||||
resetDirectPrefs();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns if multiple files selected or not.
|
||||
*/
|
||||
public boolean getIsMultipleFilesSelected() {
|
||||
return isMultipleFilesSelected;
|
||||
}
|
||||
|
||||
public void resetDirectPrefs() {
|
||||
directKvStore.remove(PLACE_OBJECT);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
package fr.free.nrw.commons.upload.categories;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.os.Bundle;
|
||||
import android.text.Editable;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
|
|
@ -22,6 +24,7 @@ import com.jakewharton.rxbinding2.view.RxView;
|
|||
import com.jakewharton.rxbinding2.widget.RxTextView;
|
||||
import fr.free.nrw.commons.R;
|
||||
import fr.free.nrw.commons.category.CategoryItem;
|
||||
import fr.free.nrw.commons.upload.UploadActivity;
|
||||
import fr.free.nrw.commons.upload.UploadBaseFragment;
|
||||
import fr.free.nrw.commons.utils.DialogUtil;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
|
|
@ -36,6 +39,8 @@ public class UploadCategoriesFragment extends UploadBaseFragment implements Cate
|
|||
|
||||
@BindView(R.id.tv_title)
|
||||
TextView tvTitle;
|
||||
@BindView(R.id.tv_subtitle)
|
||||
TextView tvSubTitle;
|
||||
@BindView(R.id.til_container_search)
|
||||
TextInputLayout tilContainerEtSearch;
|
||||
@BindView(R.id.et_search)
|
||||
|
|
@ -68,7 +73,8 @@ public class UploadCategoriesFragment extends UploadBaseFragment implements Cate
|
|||
|
||||
private void init() {
|
||||
tvTitle.setText(getString(R.string.step_count, callback.getIndexInViewFlipper(this) + 1,
|
||||
callback.getTotalNumberOfSteps(), getString(R.string.categories_activity_title)));
|
||||
callback.getTotalNumberOfSteps(), getString(R.string.categories_activity_title)));
|
||||
setTvSubTitle();
|
||||
tooltip.setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
|
@ -89,6 +95,20 @@ public class UploadCategoriesFragment extends UploadBaseFragment implements Cate
|
|||
.subscribe(filter -> searchForCategory(filter.toString()), Timber::e);
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the tv subtitle If the activity is the instance of [UploadActivity] and
|
||||
* if multiple files aren't selected.
|
||||
*/
|
||||
private void setTvSubTitle() {
|
||||
final Activity activity = getActivity();
|
||||
if (activity instanceof UploadActivity) {
|
||||
final boolean isMultipleFileSelected = ((UploadActivity) activity).getIsMultipleFilesSelected();
|
||||
if (!isMultipleFileSelected) {
|
||||
tvSubTitle.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void searchForCategory(String query) {
|
||||
presenter.searchForCategories(query);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package fr.free.nrw.commons.upload.depicts;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
|
|
@ -20,6 +21,7 @@ import com.google.android.material.textfield.TextInputLayout;
|
|||
import com.jakewharton.rxbinding2.view.RxView;
|
||||
import com.jakewharton.rxbinding2.widget.RxTextView;
|
||||
import fr.free.nrw.commons.R;
|
||||
import fr.free.nrw.commons.upload.UploadActivity;
|
||||
import fr.free.nrw.commons.upload.UploadBaseFragment;
|
||||
import fr.free.nrw.commons.upload.UploadModel;
|
||||
import fr.free.nrw.commons.upload.structure.depictions.DepictedItem;
|
||||
|
|
@ -41,6 +43,8 @@ public class DepictsFragment extends UploadBaseFragment implements DepictsContra
|
|||
|
||||
@BindView(R.id.depicts_title)
|
||||
TextView depictsTitle;
|
||||
@BindView(R.id.depicts_subtitle)
|
||||
TextView depictsSubTitle;
|
||||
@BindView(R.id.depicts_search_container)
|
||||
TextInputLayout depictsSearchContainer;
|
||||
@BindView(R.id.depicts_search)
|
||||
|
|
@ -76,7 +80,8 @@ public class DepictsFragment extends UploadBaseFragment implements DepictsContra
|
|||
*/
|
||||
private void init() {
|
||||
depictsTitle.setText(getString(R.string.step_count, callback.getIndexInViewFlipper(this) + 1,
|
||||
callback.getTotalNumberOfSteps(), getString(R.string.depicts_step_title)));
|
||||
callback.getTotalNumberOfSteps(), getString(R.string.depicts_step_title)));
|
||||
setDepictsSubTitle();
|
||||
tooltip.setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
|
@ -88,6 +93,20 @@ public class DepictsFragment extends UploadBaseFragment implements DepictsContra
|
|||
addTextChangeListenerToSearchBox();
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the depicts subtitle If the activity is the instance of [UploadActivity] and
|
||||
* if multiple files aren't selected.
|
||||
*/
|
||||
private void setDepictsSubTitle() {
|
||||
final Activity activity = getActivity();
|
||||
if (activity instanceof UploadActivity) {
|
||||
final boolean isMultipleFileSelected = ((UploadActivity) activity).getIsMultipleFilesSelected();
|
||||
if (!isMultipleFileSelected) {
|
||||
depictsSubTitle.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialise recyclerView and set adapter
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package fr.free.nrw.commons.upload.license;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.text.Html;
|
||||
|
|
@ -20,6 +21,7 @@ import android.widget.TextView;
|
|||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import fr.free.nrw.commons.upload.UploadActivity;
|
||||
import fr.free.nrw.commons.utils.DialogUtil;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -38,6 +40,8 @@ public class MediaLicenseFragment extends UploadBaseFragment implements MediaLic
|
|||
|
||||
@BindView(R.id.tv_title)
|
||||
TextView tvTitle;
|
||||
@BindView(R.id.tv_subtitle)
|
||||
TextView tvSubTitle;
|
||||
@BindView(R.id.spinner_license_list)
|
||||
Spinner spinnerLicenseList;
|
||||
@BindView(R.id.tv_share_license_summary)
|
||||
|
|
@ -72,7 +76,8 @@ public class MediaLicenseFragment extends UploadBaseFragment implements MediaLic
|
|||
|
||||
private void init() {
|
||||
tvTitle.setText(getString(R.string.step_count, callback.getIndexInViewFlipper(this) + 1,
|
||||
callback.getTotalNumberOfSteps(), getString(R.string.license_step_title)));
|
||||
callback.getTotalNumberOfSteps(), getString(R.string.license_step_title)));
|
||||
setTvSubTitle();
|
||||
tooltip.setOnClickListener(new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
|
@ -84,6 +89,20 @@ public class MediaLicenseFragment extends UploadBaseFragment implements MediaLic
|
|||
presenter.getLicenses();
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the tv Subtitle If the activity is the instance of [UploadActivity] and
|
||||
* if multiple files aren't selected.
|
||||
*/
|
||||
private void setTvSubTitle() {
|
||||
final Activity activity = getActivity();
|
||||
if (activity instanceof UploadActivity) {
|
||||
final boolean isMultipleFileSelected = ((UploadActivity) activity).getIsMultipleFilesSelected();
|
||||
if (!isMultipleFileSelected) {
|
||||
tvSubTitle.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void initPresenter() {
|
||||
presenter.onAttachView(this);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue