From ef73204cc00ca5c6db70c419e8db9aae3dc3620b Mon Sep 17 00:00:00 2001 From: spelka Date: Sat, 3 Nov 2018 05:37:57 -0700 Subject: [PATCH 01/21] Fix #1921, missing information about internet connectivity on nearby page The reported issue is that in the Nearby activity, the app does not communicate that there is no internet connection. On investigation, it appears that a toast message does briefly display "No internet connection". It looks like other activities have implemented this same message within the snackbar instead. In order to have a consistent style of communication to the user, I removed the toast message and replace it with the snackbar message, as implemented in NotificationActivity.java. --- .../main/java/fr/free/nrw/commons/nearby/NearbyActivity.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java index 2143496f0..b80e6e2a3 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java @@ -13,6 +13,7 @@ import android.os.Bundle; import android.os.Handler; import android.support.annotation.NonNull; import android.support.design.widget.BottomSheetBehavior; +import android.support.design.widget.Snackbar; import android.support.v4.app.FragmentTransaction; import android.support.v7.app.AlertDialog; import android.view.Menu; @@ -371,6 +372,7 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp private void addNetworkBroadcastReceiver() { IntentFilter intentFilter = new IntentFilter(NETWORK_INTENT_ACTION); + Snackbar snackbar = Snackbar.make(transparentView , R.string.no_internet, Snackbar.LENGTH_INDEFINITE); broadcastReceiver = new BroadcastReceiver() { @@ -378,8 +380,9 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp public void onReceive(Context context, Intent intent) { if (NetworkUtils.isInternetConnectionEstablished(NearbyActivity.this)) { refreshView(LOCATION_SIGNIFICANTLY_CHANGED); + snackbar.dismiss(); } else { - ViewUtil.showLongToast(NearbyActivity.this, getString(R.string.no_internet)); + snackbar.show(); } } }; From b2e5ad0c2644ba26577f4fd20ab2c1c93b68201a Mon Sep 17 00:00:00 2001 From: Edward Savage Date: Sat, 3 Nov 2018 08:51:47 -0400 Subject: [PATCH 02/21] Remove redundant type casts (#1929) --- .../java/fr/free/nrw/commons/WelcomePagerAdapter.java | 2 +- .../nrw/commons/achievements/AchievementsActivity.java | 4 ++-- .../commons/contributions/ContributionViewHolder.java | 10 +++++----- .../fr/free/nrw/commons/media/MediaDetailFragment.java | 2 +- .../fr/free/nrw/commons/quiz/QuizResultActivity.java | 4 ++-- .../fr/free/nrw/commons/quiz/RadioGroupHelper.java | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java b/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java index 8bc82be98..dcedea4ce 100644 --- a/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java +++ b/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java @@ -61,7 +61,7 @@ public class WelcomePagerAdapter extends PagerAdapter { LayoutInflater inflater = LayoutInflater.from(container.getContext()); ViewGroup layout = (ViewGroup) inflater.inflate(PAGE_LAYOUTS[position], container, false); if( BuildConfig.FLAVOR == "beta"){ - TextView textView = (TextView) layout.findViewById(R.id.welcomeYesButton); + TextView textView = layout.findViewById(R.id.welcomeYesButton); if( textView.getVisibility() != View.VISIBLE){ textView.setVisibility(View.VISIBLE); } diff --git a/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java b/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java index 73143fb80..70143cbb6 100644 --- a/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java @@ -338,9 +338,9 @@ public class AchievementsActivity extends NavigationBaseActivity { AlertDialog.Builder alertadd = new AlertDialog.Builder(AchievementsActivity.this); LayoutInflater factory = LayoutInflater.from(AchievementsActivity.this); final View view = factory.inflate(R.layout.image_alert_layout, null); - ImageView screenShotImage = (ImageView) view.findViewById(R.id.alert_image); + ImageView screenShotImage = view.findViewById(R.id.alert_image); screenShotImage.setImageBitmap(screenshot); - TextView shareMessage = (TextView) view.findViewById(R.id.alert_text); + TextView shareMessage = view.findViewById(R.id.alert_text); shareMessage.setText(R.string.achievements_share_message); alertadd.setView(view); alertadd.setPositiveButton(R.string.about_translate_proceed, (dialog, which) -> shareScreen(screenshot)); diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionViewHolder.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionViewHolder.java index a944cf866..3dc79a50b 100644 --- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionViewHolder.java +++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionViewHolder.java @@ -15,10 +15,10 @@ class ContributionViewHolder { final ProgressBar progressView; ContributionViewHolder(View parent) { - imageView = (MediaWikiImageView) parent.findViewById(R.id.contributionImage); - titleView = (TextView)parent.findViewById(R.id.contributionTitle); - stateView = (TextView)parent.findViewById(R.id.contributionState); - seqNumView = (TextView)parent.findViewById(R.id.contributionSequenceNumber); - progressView = (ProgressBar)parent.findViewById(R.id.contributionProgress); + imageView = parent.findViewById(R.id.contributionImage); + titleView = parent.findViewById(R.id.contributionTitle); + stateView = parent.findViewById(R.id.contributionState); + seqNumView = parent.findViewById(R.id.contributionSequenceNumber); + progressView = parent.findViewById(R.id.contributionProgress); } } diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java index f6c1a3e35..19b7f2c06 100644 --- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java @@ -439,7 +439,7 @@ public class MediaDetailFragment extends CommonsDaggerSupportFragment { private View buildCatLabel(final String catName, ViewGroup categoryContainer) { final View item = LayoutInflater.from(getContext()).inflate(R.layout.detail_category_item, categoryContainer, false); - final CompatTextView textView = (CompatTextView) item.findViewById(R.id.mediaDetailCategoryItemText); + final CompatTextView textView = item.findViewById(R.id.mediaDetailCategoryItemText); textView.setText(catName); if (categoriesLoaded && categoriesPresent) { diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java b/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java index 95258d81b..c5e138b07 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java @@ -186,9 +186,9 @@ public class QuizResultActivity extends AppCompatActivity { AlertDialog.Builder alertadd = new AlertDialog.Builder(QuizResultActivity.this); LayoutInflater factory = LayoutInflater.from(QuizResultActivity.this); final View view = factory.inflate(R.layout.image_alert_layout, null); - ImageView screenShotImage = (ImageView) view.findViewById(R.id.alert_image); + ImageView screenShotImage = view.findViewById(R.id.alert_image); screenShotImage.setImageBitmap(screenshot); - TextView shareMessage = (TextView) view.findViewById(R.id.alert_text); + TextView shareMessage = view.findViewById(R.id.alert_text); shareMessage.setText(R.string.quiz_result_share_message); alertadd.setView(view); alertadd.setPositiveButton(R.string.about_translate_proceed, (dialog, which) -> shareScreen(screenshot)); diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java b/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java index 9d907fc08..5de64a62b 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java @@ -44,7 +44,7 @@ public class RadioGroupHelper { public RadioGroupHelper(View rootView, int... radiosIDs) { super(); for (int radioButtonID : radiosIDs) { - add((RadioButton)rootView.findViewById(radioButtonID)); + add(rootView.findViewById(radioButtonID)); } } From 27123f5317ea8458f6e293dee0c7023daf2f9acd Mon Sep 17 00:00:00 2001 From: Vivek Maskara Date: Sat, 3 Nov 2018 18:42:07 +0530 Subject: [PATCH 03/21] Crash fix due to bookmarks authority on prod variant (#1977) --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 6d1c349d9..b6b68f6a2 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -153,8 +153,8 @@ android { buildConfigField "String", "MODIFICATION_AUTHORITY", "\"fr.free.nrw.commons.modifications.contentprovider\"" buildConfigField "String", "CATEGORY_AUTHORITY", "\"fr.free.nrw.commons.categories.contentprovider\"" buildConfigField "String", "RECENT_SEARCH_AUTHORITY", "\"fr.free.nrw.commons.explore.recentsearches.contentprovider\"" - buildConfigField "String", "BOOKMARK_AUTHORITY", "\"fr.free.nrw.commons.beta.bookmarks.contentprovider\"" - buildConfigField "String", "BOOKMARK_LOCATIONS_AUTHORITY", "\"fr.free.nrw.commons.beta.bookmarks.locations.contentprovider\"" + buildConfigField "String", "BOOKMARK_AUTHORITY", "\"fr.free.nrw.commons.bookmarks.contentprovider\"" + buildConfigField "String", "BOOKMARK_LOCATIONS_AUTHORITY", "\"fr.free.nrw.commons.bookmarks.locations.contentprovider\"" dimension 'tier' } From 0cf2299e49cdc1bfdec89a4534cb535ed6bc9362 Mon Sep 17 00:00:00 2001 From: Bruno <6007033+befrou@users.noreply.github.com> Date: Sun, 4 Nov 2018 12:34:40 -0200 Subject: [PATCH 04/21] Added an onclick to the middle text of a Notification (#1872) * Enhancement issue #1862 Added on click to the "middle text" of a Notification item. * Added comment #1862 Added comment to better explain method usage. --- .../notification/NotificationRenderer.java | 25 ++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/fr/free/nrw/commons/notification/NotificationRenderer.java b/app/src/main/java/fr/free/nrw/commons/notification/NotificationRenderer.java index b4a1d36e0..f843cda66 100644 --- a/app/src/main/java/fr/free/nrw/commons/notification/NotificationRenderer.java +++ b/app/src/main/java/fr/free/nrw/commons/notification/NotificationRenderer.java @@ -1,6 +1,11 @@ package fr.free.nrw.commons.notification; +import android.graphics.Color; import android.text.Html; +import android.text.SpannableString; +import android.text.Spanned; +import android.text.TextPaint; +import android.text.style.ClickableSpan; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -60,7 +65,25 @@ public class NotificationRenderer extends Renderer { notificationText = notificationText.trim().replaceAll("(^\\s*)|(\\s*$)", ""); notificationText = Html.fromHtml(notificationText).toString(); notificationText = notificationText.concat(" "); - title.setText(notificationText); + + SpannableString ss = new SpannableString(notificationText); + ClickableSpan clickableSpan = new ClickableSpan() { + @Override + public void onClick(View view) { + listener.notificationClicked(getContent()); + } + + @Override + public void updateDrawState(TextPaint ds) { + super.updateDrawState(ds); + ds.setUnderlineText(false); + ds.setColor(Color.BLACK); + } + }; + + // Attach a ClickableSpan to the range (start:0, end:notificationText.length()) of the String + ss.setSpan(clickableSpan, 0, notificationText.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + title.setText(ss, TextView.BufferType.SPANNABLE); } public interface NotificationClicked{ From 7b7d17a33b359f182fd6312add93e2a5b73ab3be Mon Sep 17 00:00:00 2001 From: Paul Oranje Date: Sun, 4 Nov 2018 15:37:28 +0100 Subject: [PATCH 05/21] Fixes #171 Fix Lint errors/warnings: global, coding style: add missing spaces (#1955) * Inserted missing spaces between `if` and `(` to improve code style, in line with GSG 4.6.2 --- .../free/nrw/commons/upload/FileUtilsTest.java | 2 +- .../fr/free/nrw/commons/WelcomeActivity.java | 4 ++-- .../free/nrw/commons/WelcomePagerAdapter.java | 6 +++--- .../achievements/AchievementsActivity.java | 6 +++--- .../nrw/commons/achievements/BitmapUtils.java | 2 +- .../commons/achievements/FeaturedImages.java | 2 +- .../commons/achievements/FeedbackResponse.java | 2 +- .../free/nrw/commons/auth/LoginActivity.java | 8 ++++---- .../bookmarks/BookmarksPagerAdapter.java | 2 +- .../pictures/BookmarkPicturesFragment.java | 6 +++--- .../fr/free/nrw/commons/category/Category.java | 2 +- .../category/CategoryImageController.java | 2 +- .../category/CategoryImagesListFragment.java | 8 ++++---- .../nrw/commons/category/GridViewAdapter.java | 2 +- .../category/SubCategoryListFragment.java | 6 +++--- .../commons/concurrency/ThreadPoolService.java | 2 +- .../contributions/ContributionsActivity.java | 6 +++--- .../ContributionsListFragment.java | 2 +- .../fr/free/nrw/commons/delete/DeleteTask.java | 2 +- .../commons/di/ApplicationlessInjection.java | 2 +- .../commons/di/CommonsApplicationModule.java | 2 +- .../di/CommonsDaggerAppCompatActivity.java | 2 +- .../di/CommonsDaggerBroadcastReceiver.java | 2 +- .../di/CommonsDaggerContentProvider.java | 2 +- .../commons/di/CommonsDaggerIntentService.java | 2 +- .../nrw/commons/di/CommonsDaggerService.java | 2 +- .../di/CommonsDaggerSupportFragment.java | 2 +- .../categories/SearchCategoryFragment.java | 6 +++--- .../explore/images/SearchImageFragment.java | 8 ++++---- .../explore/recentsearches/RecentSearch.java | 2 +- .../nrw/commons/logging/CommonsLogSender.java | 2 +- .../nrw/commons/logging/FileLoggingTree.java | 2 +- .../commons/logging/LogLevelSettableTree.java | 2 +- .../fr/free/nrw/commons/logging/LogUtils.java | 4 ++-- .../free/nrw/commons/logging/LogsSender.java | 2 +- .../nrw/commons/media/MediaDetailFragment.java | 10 +++++----- .../media/MediaDetailPagerFragment.java | 18 +++++++++--------- .../mwapi/ApacheHttpClientMediaWikiApi.java | 4 ++-- .../nrw/commons/mwapi/CustomApiResult.java | 2 +- .../fr/free/nrw/commons/mwapi/CustomMwApi.java | 12 ++++++------ .../nrw/commons/nearby/NearbyActivity.java | 6 +++--- .../commons/nearby/NearbyAdapterFactory.java | 2 +- .../nrw/commons/nearby/NearbyListFragment.java | 2 +- .../nrw/commons/nearby/NearbyMapFragment.java | 6 +++--- .../fr/free/nrw/commons/nearby/Sitelinks.java | 2 +- .../notification/NotificationActivity.java | 4 ++-- .../commons/notification/NotificationType.java | 2 +- .../notification/NotificationUtils.java | 2 +- .../fr/free/nrw/commons/quiz/QuizActivity.java | 10 +++++----- .../fr/free/nrw/commons/quiz/QuizChecker.java | 6 +++--- .../nrw/commons/quiz/QuizResultActivity.java | 2 +- .../nrw/commons/quiz/RadioGroupHelper.java | 4 ++-- .../nrw/commons/settings/SettingsActivity.java | 2 +- .../nrw/commons/ui/widget/CompatTextView.java | 2 +- .../nrw/commons/ui/widget/HtmlTextView.java | 2 +- .../nrw/commons/upload/ExistingFileAsync.java | 2 +- .../fr/free/nrw/commons/upload/FileUtils.java | 4 ++-- .../commons/upload/MultipleShareActivity.java | 4 ++-- .../free/nrw/commons/upload/ShareActivity.java | 2 +- .../nrw/commons/upload/UploadController.java | 2 +- .../free/nrw/commons/upload/UploadService.java | 2 +- .../fr/free/nrw/commons/upload/UrlLicense.java | 2 +- .../fr/free/nrw/commons/utils/FileUtils.java | 2 +- .../nrw/commons/utils/StringSortingUtils.java | 2 +- .../nrw/commons/utils/UriDeserializer.java | 2 +- .../fr/free/nrw/commons/utils/ViewUtil.java | 4 ++-- .../nrw/commons/widget/PicOfDayAppWidget.java | 2 +- .../wikidata/WikidataEditListenerImpl.java | 2 +- .../commons/wikidata/WikidataEditService.java | 4 ++-- 69 files changed, 126 insertions(+), 126 deletions(-) diff --git a/app/src/androidTest/java/fr/free/nrw/commons/upload/FileUtilsTest.java b/app/src/androidTest/java/fr/free/nrw/commons/upload/FileUtilsTest.java index d2db4614f..636d30a1b 100644 --- a/app/src/androidTest/java/fr/free/nrw/commons/upload/FileUtilsTest.java +++ b/app/src/androidTest/java/fr/free/nrw/commons/upload/FileUtilsTest.java @@ -27,4 +27,4 @@ public class FileUtilsTest { boolean selfOwned = FileUtils.isSelfOwned(InstrumentationRegistry.getTargetContext(), uri); assertThat(selfOwned, is(false)); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/WelcomeActivity.java b/app/src/main/java/fr/free/nrw/commons/WelcomeActivity.java index 74247a02f..109d115d4 100644 --- a/app/src/main/java/fr/free/nrw/commons/WelcomeActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/WelcomeActivity.java @@ -33,7 +33,7 @@ public class WelcomeActivity extends BaseActivity { moreInformation = this.getString(R.string.welcome_help_button_text); - if(getIntent() != null) { + if (getIntent() != null) { Bundle bundle = getIntent().getExtras(); if (bundle != null) { isQuiz = bundle.getBoolean("isQuiz"); @@ -54,7 +54,7 @@ public class WelcomeActivity extends BaseActivity { */ @Override public void onDestroy() { - if(isQuiz){ + if (isQuiz){ Intent i = new Intent(WelcomeActivity.this, QuizActivity.class); startActivity(i); } diff --git a/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java b/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java index dcedea4ce..f2c6d1054 100644 --- a/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java +++ b/app/src/main/java/fr/free/nrw/commons/WelcomePagerAdapter.java @@ -60,15 +60,15 @@ public class WelcomePagerAdapter extends PagerAdapter { this.container=container; LayoutInflater inflater = LayoutInflater.from(container.getContext()); ViewGroup layout = (ViewGroup) inflater.inflate(PAGE_LAYOUTS[position], container, false); - if( BuildConfig.FLAVOR == "beta"){ + if (BuildConfig.FLAVOR == "beta") { TextView textView = layout.findViewById(R.id.welcomeYesButton); - if( textView.getVisibility() != View.VISIBLE){ + if (textView.getVisibility() != View.VISIBLE) { textView.setVisibility(View.VISIBLE); } ViewHolder holder = new ViewHolder(layout); layout.setTag(holder); - if(position == PAGE_FINAL){ + if (position == PAGE_FINAL){ TextView moreInfo = layout.findViewById(R.id.welcomeInfo); moreInfo.setText(Html.fromHtml(WelcomeActivity.moreInformation)); ViewHolder holder1 = new ViewHolder(layout); diff --git a/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java b/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java index 70143cbb6..d04d2b7b1 100644 --- a/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/achievements/AchievementsActivity.java @@ -185,7 +185,7 @@ public class AchievementsActivity extends NavigationBaseActivity { * which then calls parseJson when results are fetched */ private void setAchievements() { - if(checkAccount()) { + if (checkAccount()) { compositeDisposable.add(mediaWikiApi .getAchievements(Objects.requireNonNull(sessionManager.getCurrentAccount()).name) .subscribeOn(Schedulers.io()) @@ -218,7 +218,7 @@ public class AchievementsActivity extends NavigationBaseActivity { * used to the count of images uploaded by user */ private void setUploadCount(Achievements achievements) { - if(checkAccount()) { + if (checkAccount()) { compositeDisposable.add(mediaWikiApi .getUploadCount(Objects.requireNonNull(sessionManager.getCurrentAccount()).name) .subscribeOn(Schedulers.io()) @@ -387,7 +387,7 @@ public class AchievementsActivity extends NavigationBaseActivity { */ private boolean checkAccount(){ Account currentAccount = sessionManager.getCurrentAccount(); - if(currentAccount == null) { + if (currentAccount == null) { Timber.d("Current account is null"); ViewUtil.showLongToast(this, getResources().getString(R.string.user_not_logged_in)); sessionManager.forceLogin(this); diff --git a/app/src/main/java/fr/free/nrw/commons/achievements/BitmapUtils.java b/app/src/main/java/fr/free/nrw/commons/achievements/BitmapUtils.java index b7400117d..57318a12d 100644 --- a/app/src/main/java/fr/free/nrw/commons/achievements/BitmapUtils.java +++ b/app/src/main/java/fr/free/nrw/commons/achievements/BitmapUtils.java @@ -19,7 +19,7 @@ public class BitmapUtils { */ public static BitmapDrawable writeOnDrawable(Bitmap bm, String text, Context context){ Bitmap.Config config = bm.getConfig(); - if(config == null){ + if (config == null){ config = Bitmap.Config.ARGB_8888; } Bitmap bitmap = Bitmap.createBitmap(bm.getWidth(),bm.getHeight(),config); diff --git a/app/src/main/java/fr/free/nrw/commons/achievements/FeaturedImages.java b/app/src/main/java/fr/free/nrw/commons/achievements/FeaturedImages.java index 8b9992e28..a943ed4a3 100644 --- a/app/src/main/java/fr/free/nrw/commons/achievements/FeaturedImages.java +++ b/app/src/main/java/fr/free/nrw/commons/achievements/FeaturedImages.java @@ -22,4 +22,4 @@ public class FeaturedImages { public int getFeaturedPicturesOnWikimediaCommons() { return featuredPicturesOnWikimediaCommons; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/achievements/FeedbackResponse.java b/app/src/main/java/fr/free/nrw/commons/achievements/FeedbackResponse.java index 37fea3e2d..b8323f973 100644 --- a/app/src/main/java/fr/free/nrw/commons/achievements/FeedbackResponse.java +++ b/app/src/main/java/fr/free/nrw/commons/achievements/FeedbackResponse.java @@ -61,4 +61,4 @@ public class FeedbackResponse { public int getImagesEditedBySomeoneElse() { return imagesEditedBySomeoneElse; } -} \ No newline at end of file +} 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 371f561ca..55c42a158 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 @@ -139,7 +139,7 @@ public class LoginActivity extends AccountAuthenticatorActivity { .setNegativeButton(R.string.no, (dialog, which) -> dialog.cancel()) .show()); - if(BuildConfig.FLAVOR.equals("beta")){ + if (BuildConfig.FLAVOR.equals("beta")){ loginCredentials.setText(getString(R.string.login_credential)); } else { loginCredentials.setVisibility(View.GONE); @@ -381,10 +381,10 @@ public class LoginActivity extends AccountAuthenticatorActivity { super.onRestoreInstanceState(savedInstanceState); loginCurrentlyInProgress = savedInstanceState.getBoolean(LOGING_IN, false); errorMessageShown = savedInstanceState.getBoolean(ERROR_MESSAGE_SHOWN, false); - if(loginCurrentlyInProgress){ + if (loginCurrentlyInProgress){ performLogin(); } - if(errorMessageShown){ + if (errorMessageShown){ resultantError = savedInstanceState.getString(RESULTANT_ERROR); handleOtherResults(resultantError); } @@ -399,7 +399,7 @@ public class LoginActivity extends AccountAuthenticatorActivity { public void showMessageAndCancelDialog(@StringRes int resId) { showMessage(resId, R.color.secondaryDarkColor); - if(progressDialog != null){ + if (progressDialog != null){ progressDialog.cancel(); } } diff --git a/app/src/main/java/fr/free/nrw/commons/bookmarks/BookmarksPagerAdapter.java b/app/src/main/java/fr/free/nrw/commons/bookmarks/BookmarksPagerAdapter.java index cad65a87a..b0f94e322 100644 --- a/app/src/main/java/fr/free/nrw/commons/bookmarks/BookmarksPagerAdapter.java +++ b/app/src/main/java/fr/free/nrw/commons/bookmarks/BookmarksPagerAdapter.java @@ -63,4 +63,4 @@ public class BookmarksPagerAdapter extends FragmentPagerAdapter { BookmarkPicturesFragment fragment = (BookmarkPicturesFragment)(pages.get(0).getPage()); fragment.onResume(); } -} \ No newline at end of file +} 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 4232c1750..90b3ef457 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 @@ -105,7 +105,7 @@ public class BookmarkPicturesFragment extends DaggerFragment { */ @SuppressLint("CheckResult") private void initList() { - if(!NetworkUtils.isInternetConnectionEstablished(getContext())) { + if (!NetworkUtils.isInternetConnectionEstablished(getContext())) { handleNoInternet(); return; } @@ -179,7 +179,7 @@ public class BookmarkPicturesFragment extends DaggerFragment { * @param collection List of new Media to be displayed */ private void handleSuccess(List collection) { - if(collection == null) { + if (collection == null) { initErrorView(); return; } @@ -188,7 +188,7 @@ public class BookmarkPicturesFragment extends DaggerFragment { return; } - if(gridAdapter == null) { + if (gridAdapter == null) { setAdapter(collection); } else { if (gridAdapter.containsAll(collection)) { 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 f2d83d2e5..8ea3c442c 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 @@ -93,4 +93,4 @@ public class Category { this.contentUri = contentUri; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/category/CategoryImageController.java b/app/src/main/java/fr/free/nrw/commons/category/CategoryImageController.java index 3495d710c..ae45952e4 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/CategoryImageController.java +++ b/app/src/main/java/fr/free/nrw/commons/category/CategoryImageController.java @@ -26,4 +26,4 @@ public class CategoryImageController { public List getCategoryImages(String categoryName) { return mediaWikiApi.getCategoryImages(categoryName); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/category/CategoryImagesListFragment.java b/app/src/main/java/fr/free/nrw/commons/category/CategoryImagesListFragment.java index f24cc0b95..1ead68701 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/CategoryImagesListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/category/CategoryImagesListFragment.java @@ -101,7 +101,7 @@ public class CategoryImagesListFragment extends DaggerFragment { */ @SuppressLint("CheckResult") private void initList() { - if(!NetworkUtils.isInternetConnectionEstablished(getContext())) { + if (!NetworkUtils.isInternetConnectionEstablished(getContext())) { handleNoInternet(); return; } @@ -208,7 +208,7 @@ public class CategoryImagesListFragment extends DaggerFragment { */ @SuppressLint("CheckResult") private void fetchMoreImages() { - if(!NetworkUtils.isInternetConnectionEstablished(getContext())) { + if (!NetworkUtils.isInternetConnectionEstablished(getContext())) { handleNoInternet(); return; } @@ -227,13 +227,13 @@ public class CategoryImagesListFragment extends DaggerFragment { * @param collection List of new Media to be displayed */ private void handleSuccess(List collection) { - if(collection == null || collection.isEmpty()) { + if (collection == null || collection.isEmpty()) { initErrorView(); hasMoreImages = false; return; } - if(gridAdapter == null) { + if (gridAdapter == null) { setAdapter(collection); } else { if (gridAdapter.containsAll(collection)) { diff --git a/app/src/main/java/fr/free/nrw/commons/category/GridViewAdapter.java b/app/src/main/java/fr/free/nrw/commons/category/GridViewAdapter.java index ca4059e9d..988e992fa 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/GridViewAdapter.java +++ b/app/src/main/java/fr/free/nrw/commons/category/GridViewAdapter.java @@ -109,4 +109,4 @@ public class GridViewAdapter extends ArrayAdapter { author.setVisibility(View.GONE); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/category/SubCategoryListFragment.java b/app/src/main/java/fr/free/nrw/commons/category/SubCategoryListFragment.java index ed21d011b..984d87fae 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/SubCategoryListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/category/SubCategoryListFragment.java @@ -73,7 +73,7 @@ public class SubCategoryListFragment extends CommonsDaggerSupportFragment { categoryName = getArguments().getString("categoryName"); isParentCategory = getArguments().getBoolean("isParentCategory"); initSubCategoryList(); - if(getActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ + if (getActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ categoriesRecyclerView.setLayoutManager(new LinearLayoutManager(getContext())); } else{ @@ -91,7 +91,7 @@ public class SubCategoryListFragment extends CommonsDaggerSupportFragment { */ public void initSubCategoryList() { categoriesNotFoundView.setVisibility(GONE); - if(!NetworkUtils.isInternetConnectionEstablished(getContext())) { + if (!NetworkUtils.isInternetConnectionEstablished(getContext())) { handleNoInternet(); return; } @@ -118,7 +118,7 @@ public class SubCategoryListFragment extends CommonsDaggerSupportFragment { * @param subCategoryList */ private void handleSuccess(List subCategoryList) { - if(subCategoryList == null || subCategoryList.isEmpty()) { + if (subCategoryList == null || subCategoryList.isEmpty()) { initEmptyView(); } else { 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 e0fd495ef..2cda95a7d 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 @@ -121,4 +121,4 @@ public class ThreadPoolService implements Executor { return new ThreadPoolService(this); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java index a903c6339..e01942d9f 100644 --- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java @@ -147,12 +147,12 @@ public class ContributionsActivity setTitle(getString(R.string.title_activity_contributions)); - if(checkAccount()) { + if (checkAccount()) { new QuizChecker(this, sessionManager.getCurrentAccount().name, mediaWikiApi); } - if(!BuildConfig.FLAVOR.equalsIgnoreCase("beta")){ + if (!BuildConfig.FLAVOR.equalsIgnoreCase("beta")){ setUploadCount(); } @@ -256,7 +256,7 @@ public class ContributionsActivity ((CursorAdapter) contributionsList.getAdapter()).swapCursor(cursor); } - if(contributionsList.getAdapter().getCount()>0){ + if (contributionsList.getAdapter().getCount()>0){ contributionsList.changeEmptyScreen(false); } contributionsList.clearSyncMessage(); 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 a04c1120f..a17db5e80 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 @@ -93,7 +93,7 @@ public class ContributionsListFragment extends CommonsDaggerSupportFragment { public void setAdapter(ListAdapter adapter) { this.contributionsList.setAdapter(adapter); - if(BuildConfig.FLAVOR.equalsIgnoreCase("beta")){ + if (BuildConfig.FLAVOR.equalsIgnoreCase("beta")){ ((ContributionsActivity) getActivity()).betaSetUploadCount(adapter.getCount()); } } diff --git a/app/src/main/java/fr/free/nrw/commons/delete/DeleteTask.java b/app/src/main/java/fr/free/nrw/commons/delete/DeleteTask.java index f35a6c38e..81a1e0aba 100644 --- a/app/src/main/java/fr/free/nrw/commons/delete/DeleteTask.java +++ b/app/src/main/java/fr/free/nrw/commons/delete/DeleteTask.java @@ -182,4 +182,4 @@ public class DeleteTask extends AsyncTask { .setPriority(PRIORITY_HIGH); notificationManager.notify(NOTIFICATION_DELETE, notificationBuilder.build()); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/ApplicationlessInjection.java b/app/src/main/java/fr/free/nrw/commons/di/ApplicationlessInjection.java index 2faf09b83..87a0d9da0 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/ApplicationlessInjection.java +++ b/app/src/main/java/fr/free/nrw/commons/di/ApplicationlessInjection.java @@ -90,4 +90,4 @@ public class ApplicationlessInjection return instance; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsApplicationModule.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsApplicationModule.java index e6a61f307..a52f6ddab 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsApplicationModule.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsApplicationModule.java @@ -173,4 +173,4 @@ public class CommonsApplicationModule { public boolean provideIsBetaVariant() { return BuildConfig.FLAVOR.equals("beta"); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerAppCompatActivity.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerAppCompatActivity.java index 9f06725de..9287e1bfc 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerAppCompatActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerAppCompatActivity.java @@ -40,4 +40,4 @@ public abstract class CommonsDaggerAppCompatActivity extends AppCompatActivity i activityInjector.inject(this); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java index 3c4cb9914..10fa74a9b 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java @@ -28,4 +28,4 @@ public abstract class CommonsDaggerBroadcastReceiver extends BroadcastReceiver { serviceInjector.inject(this); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerContentProvider.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerContentProvider.java index 38506c4ca..06adee489 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerContentProvider.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerContentProvider.java @@ -29,4 +29,4 @@ public abstract class CommonsDaggerContentProvider extends ContentProvider { serviceInjector.inject(this); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerIntentService.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerIntentService.java index 995c517a1..41f661db4 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerIntentService.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerIntentService.java @@ -29,4 +29,4 @@ public abstract class CommonsDaggerIntentService extends IntentService { serviceInjector.inject(this); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerService.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerService.java index dc6c10b9f..0d045d2ce 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerService.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerService.java @@ -28,4 +28,4 @@ public abstract class CommonsDaggerService extends Service { serviceInjector.inject(this); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerSupportFragment.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerSupportFragment.java index 8c33e7a98..3f2556466 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerSupportFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerSupportFragment.java @@ -62,4 +62,4 @@ public abstract class CommonsDaggerSupportFragment extends Fragment implements H throw new IllegalArgumentException(String.format("No injector was found for %s", getClass().getCanonicalName())); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/explore/categories/SearchCategoryFragment.java b/app/src/main/java/fr/free/nrw/commons/explore/categories/SearchCategoryFragment.java index 7f2b3ff93..520c55a57 100644 --- a/app/src/main/java/fr/free/nrw/commons/explore/categories/SearchCategoryFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/explore/categories/SearchCategoryFragment.java @@ -95,7 +95,7 @@ public class SearchCategoryFragment extends CommonsDaggerSupportFragment { public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_browse_image, container, false); ButterKnife.bind(this, rootView); - if(getActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ + if (getActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ categoriesRecyclerView.setLayoutManager(new LinearLayoutManager(getContext())); } else{ @@ -124,7 +124,7 @@ public class SearchCategoryFragment extends CommonsDaggerSupportFragment { public void updateCategoryList(String query) { this.query = query; categoriesNotFoundView.setVisibility(GONE); - if(!NetworkUtils.isInternetConnectionEstablished(getContext())) { + if (!NetworkUtils.isInternetConnectionEstablished(getContext())) { handleNoInternet(); return; } @@ -173,7 +173,7 @@ public class SearchCategoryFragment extends CommonsDaggerSupportFragment { */ private void handleSuccess(List mediaList) { queryList = mediaList; - if(mediaList == null || mediaList.isEmpty()) { + if (mediaList == null || mediaList.isEmpty()) { initErrorView(); } else { diff --git a/app/src/main/java/fr/free/nrw/commons/explore/images/SearchImageFragment.java b/app/src/main/java/fr/free/nrw/commons/explore/images/SearchImageFragment.java index 7c7f1cdd9..43fcf4460 100644 --- a/app/src/main/java/fr/free/nrw/commons/explore/images/SearchImageFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/explore/images/SearchImageFragment.java @@ -97,7 +97,7 @@ public class SearchImageFragment extends CommonsDaggerSupportFragment { public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_browse_image, container, false); ButterKnife.bind(this, rootView); - if(getActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ + if (getActivity().getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ imagesRecyclerView.setLayoutManager(new LinearLayoutManager(getContext())); } else{ @@ -125,10 +125,10 @@ public class SearchImageFragment extends CommonsDaggerSupportFragment { */ public void updateImageList(String query) { this.query = query; - if(imagesNotFoundView != null) { + if (imagesNotFoundView != null) { imagesNotFoundView.setVisibility(GONE); } - if(!NetworkUtils.isInternetConnectionEstablished(getContext())) { + if (!NetworkUtils.isInternetConnectionEstablished(getContext())) { handleNoInternet(); return; } @@ -182,7 +182,7 @@ public class SearchImageFragment extends CommonsDaggerSupportFragment { */ private void handleSuccess(List mediaList) { queryList = mediaList; - if(mediaList == null || mediaList.isEmpty()) { + if (mediaList == null || mediaList.isEmpty()) { initErrorView(); } else { diff --git a/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearch.java b/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearch.java index ed1aa1d6b..ed6fb903a 100644 --- a/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearch.java +++ b/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearch.java @@ -68,4 +68,4 @@ public class RecentSearch { this.contentUri = contentUri; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/logging/CommonsLogSender.java b/app/src/main/java/fr/free/nrw/commons/logging/CommonsLogSender.java index 407014db5..7f4bb2ab7 100644 --- a/app/src/main/java/fr/free/nrw/commons/logging/CommonsLogSender.java +++ b/app/src/main/java/fr/free/nrw/commons/logging/CommonsLogSender.java @@ -42,4 +42,4 @@ public class CommonsLogSender extends LogsSender { return builder.toString(); } -} \ No newline at end of file +} 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 ce8174382..8630af4da 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 @@ -141,4 +141,4 @@ public class FileLoggingTree extends Timber.DebugTree implements LogLevelSettabl LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME); logger.addAppender(rollingFileAppender); } -} \ No newline at end of file +} 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 index 83b8854cc..5eeca6d3e 100644 --- a/app/src/main/java/fr/free/nrw/commons/logging/LogLevelSettableTree.java +++ b/app/src/main/java/fr/free/nrw/commons/logging/LogLevelSettableTree.java @@ -5,4 +5,4 @@ package fr.free.nrw.commons.logging; */ public interface LogLevelSettableTree { void setLogLevel(int logLevel); -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/logging/LogUtils.java b/app/src/main/java/fr/free/nrw/commons/logging/LogUtils.java index 21b133aa2..bdf07d392 100644 --- a/app/src/main/java/fr/free/nrw/commons/logging/LogUtils.java +++ b/app/src/main/java/fr/free/nrw/commons/logging/LogUtils.java @@ -16,10 +16,10 @@ public final class LogUtils { * @return */ public static String getLogDirectory(boolean isBeta) { - if(isBeta) { + if (isBeta) { return Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/logs/beta"; } else { return Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/logs/prod"; } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/logging/LogsSender.java b/app/src/main/java/fr/free/nrw/commons/logging/LogsSender.java index 16c40cf44..59ddb2523 100644 --- a/app/src/main/java/fr/free/nrw/commons/logging/LogsSender.java +++ b/app/src/main/java/fr/free/nrw/commons/logging/LogsSender.java @@ -180,4 +180,4 @@ public abstract class LogsSender implements ReportSender { zos.flush(); zos.close(); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java index 19b7f2c06..8feed101e 100644 --- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java @@ -253,7 +253,7 @@ public class MediaDetailFragment extends CommonsDaggerSupportFragment { @Override protected Boolean doInBackground(Void... voids) { // Local files have no filename yet - if(media.getFilename() == null) { + if (media.getFilename() == null) { return Boolean.FALSE; } try { @@ -325,7 +325,7 @@ public class MediaDetailFragment extends CommonsDaggerSupportFragment { } rebuildCatList(); - if(media.getCreator() == null || media.getCreator().equals("")) { + if (media.getCreator() == null || media.getCreator().equals("")) { authorLayout.setVisibility(GONE); } else { author.setText(media.getCreator()); @@ -339,7 +339,7 @@ public class MediaDetailFragment extends CommonsDaggerSupportFragment { if (!TextUtils.isEmpty(licenseLink(media))) { openWebBrowser(licenseLink(media)); } else { - if(isCategoryImage) { + if (isCategoryImage) { Timber.d("Unable to fetch license URL for %s", media.getLicense()); } else { Toast toast = Toast.makeText(getContext(), getString(R.string.null_url), Toast.LENGTH_SHORT); @@ -414,14 +414,14 @@ public class MediaDetailFragment extends CommonsDaggerSupportFragment { @OnClick(R.id.seeMore) public void onSeeMoreClicked(){ - if(nominatedForDeletion.getVisibility()== VISIBLE) { + if (nominatedForDeletion.getVisibility()== VISIBLE) { openWebBrowser(media.getFilePageTitle().getMobileUri().toString()); } } private void enableDeleteButton(boolean visibility) { delete.setEnabled(visibility); - if(visibility) { + if (visibility) { delete.setTextColor(getResources().getColor(R.color.primaryTextColor)); } else { delete.setTextColor(getResources().getColor(R.color.deleteButtonLight)); 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 23d3f2466..824e5f4df 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 @@ -99,7 +99,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple pager.setAdapter(adapter); pager.setCurrentItem(pageNumber, false); - if(getActivity() == null) { + if (getActivity() == null) { Timber.d("Returning as activity is destroyed!"); return; } @@ -133,7 +133,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple @Override public boolean onOptionsItemSelected(MenuItem item) { - if(getActivity() == null) { + if (getActivity() == null) { Timber.d("Returning as activity is destroyed!"); return true; } @@ -156,7 +156,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple viewIntent.setAction(ACTION_VIEW); viewIntent.setData(m.getFilePageTitle().getMobileUri()); //check if web browser available - if(viewIntent.resolveActivity(getActivity().getPackageManager()) != null){ + if (viewIntent.resolveActivity(getActivity().getPackageManager()) != null){ startActivity(viewIntent); } else { Toast toast = Toast.makeText(getContext(), getString(R.string.no_web_browser), LENGTH_SHORT); @@ -193,7 +193,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple * @param media */ private void setWallpaper(Media media) { - if(media.getImageUrl() == null || media.getImageUrl().isEmpty()) { + if (media.getImageUrl() == null || media.getImageUrl().isEmpty()) { Timber.d("Media URL not present"); return; } @@ -255,7 +255,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple inflater.inflate(R.menu.fragment_image_detail, menu); if (pager != null) { MediaDetailProvider provider = (MediaDetailProvider) getActivity(); - if(provider == null) { + if (provider == null) { return; } @@ -326,7 +326,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple @Override public void onPageScrolled(int i, float v, int i2) { - if(getActivity() == null) { + if (getActivity() == null) { Timber.d("Returning as activity is destroyed!"); return; } @@ -381,7 +381,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple public Fragment getItem(int i) { if (i == 0) { // See bug https://code.google.com/p/android/issues/detail?id=27526 - if(getActivity() == null) { + if (getActivity() == null) { Timber.d("Skipping getItem. Returning as activity is destroyed!"); return null; } @@ -392,11 +392,11 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple @Override public int getCount() { - if(getActivity() == null) { + if (getActivity() == null) { Timber.d("Skipping getCount. Returning as activity is destroyed!"); return 0; } return ((MediaDetailProvider) getActivity()).getTotalMediaCount(); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/mwapi/ApacheHttpClientMediaWikiApi.java b/app/src/main/java/fr/free/nrw/commons/mwapi/ApacheHttpClientMediaWikiApi.java index eeb343da7..2e1cbb1ac 100644 --- a/app/src/main/java/fr/free/nrw/commons/mwapi/ApacheHttpClientMediaWikiApi.java +++ b/app/src/main/java/fr/free/nrw/commons/mwapi/ApacheHttpClientMediaWikiApi.java @@ -244,9 +244,9 @@ public class ApacheHttpClientMediaWikiApi implements MediaWikiApi { Timber.d("Central auth token isn't valid. Trying to fetch a fresh token"); api.removeAllCookies(); String loginResultCode = login(AccountUtil.getUserName(context), AccountUtil.getPassword(context)); - if(loginResultCode.equals("PASS")) { + if (loginResultCode.equals("PASS")) { return getCentralAuthToken(); - } else if(loginResultCode.equals("2FA")) { + } else if (loginResultCode.equals("2FA")) { Timber.e("Cannot refresh session for 2FA enabled user. Login required"); } else { Timber.e("Error occurred in refreshing session. Error code is %s", loginResultCode); diff --git a/app/src/main/java/fr/free/nrw/commons/mwapi/CustomApiResult.java b/app/src/main/java/fr/free/nrw/commons/mwapi/CustomApiResult.java index a36e8e0fd..9eb96a164 100644 --- a/app/src/main/java/fr/free/nrw/commons/mwapi/CustomApiResult.java +++ b/app/src/main/java/fr/free/nrw/commons/mwapi/CustomApiResult.java @@ -117,4 +117,4 @@ public class CustomApiResult { return null; } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/mwapi/CustomMwApi.java b/app/src/main/java/fr/free/nrw/commons/mwapi/CustomMwApi.java index 61fc7cf71..fa7ffb8e7 100644 --- a/app/src/main/java/fr/free/nrw/commons/mwapi/CustomMwApi.java +++ b/app/src/main/java/fr/free/nrw/commons/mwapi/CustomMwApi.java @@ -58,7 +58,7 @@ public class CustomMwApi { } public String getAuthCookie() { - if(authCookie == null){ + if (authCookie == null){ authCookie = ""; List cookies = client.getCookieStore().getCookies(); for(Cookie cookie: cookies) { @@ -102,14 +102,14 @@ public class CustomMwApi { } public String getUserID() throws IOException { - if(this.userID == null || this.userID.equals("0")) { + if (this.userID == null || this.userID.equals("0")) { this.validateLogin(); } return userID; } public String getUserName() throws IOException { - if(this.userID == null || this.userID.equals("0")) { + if (this.userID == null || this.userID.equals("0")) { this.validateLogin(); } return userName; @@ -122,7 +122,7 @@ public class CustomMwApi { String token = tokenData.getString("/api/login/@token"); CustomApiResult confirmData = this.action("login").param("lgname", username).param("lgpassword", password).param("lgtoken", token).post(); String finalResult = confirmData.getString("/api/login/@result"); - if(finalResult.equals("Success")) { + if (finalResult.equals("Success")) { isLoggedIn = true; } return finalResult; @@ -149,7 +149,7 @@ public class CustomMwApi { .data("comment", comment) .data("filename", filename) .sendProgressListener(uploadProgressListener); - if(length != -1) { + if (length != -1) { builder.file("file", filename, file, length); } else { builder.file("file", filename, file); @@ -177,4 +177,4 @@ public class CustomMwApi { return CustomApiResult.fromRequestBuilder(builder, client); } } -; \ No newline at end of file +; diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java index b80e6e2a3..ca4d7adef 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java @@ -196,10 +196,10 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp // Handle item selection switch (item.getItemId()) { case R.id.action_display_list: - if(bottomSheetBehavior.getState()==BottomSheetBehavior.STATE_COLLAPSED || bottomSheetBehavior.getState()==BottomSheetBehavior.STATE_HIDDEN){ + if (bottomSheetBehavior.getState()==BottomSheetBehavior.STATE_COLLAPSED || bottomSheetBehavior.getState()==BottomSheetBehavior.STATE_HIDDEN){ bottomSheetBehaviorForDetails.setState(BottomSheetBehavior.STATE_HIDDEN); bottomSheetBehavior.setState(BottomSheetBehavior.STATE_EXPANDED); - }else if(bottomSheetBehavior.getState()==BottomSheetBehavior.STATE_EXPANDED){ + }else if (bottomSheetBehavior.getState()==BottomSheetBehavior.STATE_EXPANDED){ bottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED); } @@ -356,7 +356,7 @@ public class NearbyActivity extends NavigationBaseActivity implements LocationUp super.onPause(); // this means that this activity will not be recreated now, user is leaving it // or the activity is otherwise finishing - if(isFinishing()) { + if (isFinishing()) { // we will not need this fragment anymore, this may also be a good place to signal // to the retained fragment object to perform its own cleanup. removeMapFragment(); diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java index 3adc8e529..628ed1add 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java @@ -45,4 +45,4 @@ public class NearbyAdapterFactory { rendererAdapter.notifyDataSetChanged(); rendererAdapter.diffUpdate(newPlaceList); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java index 5f0a1ebe2..b094cbb41 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java @@ -164,4 +164,4 @@ public class NearbyListFragment extends DaggerFragment { this.bundleForUpdates = bundleForUpdates; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java index d73cdf6d5..69a05a339 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java @@ -281,7 +281,7 @@ public class NearbyMapFragment extends DaggerFragment { // Make camera to follow user on location change CameraPosition position ; - if(ViewUtil.isPortrait(getActivity())){ + if (ViewUtil.isPortrait(getActivity())){ position = new CameraPosition.Builder() .target(isBottomListSheetExpanded ? new LatLng(curMapBoxLatLng.getLatitude()- CAMERA_TARGET_SHIFT_FACTOR_PORTRAIT, @@ -315,7 +315,7 @@ public class NearbyMapFragment extends DaggerFragment { if (mapboxMap != null && curLatLng != null) { if (isBottomListSheetExpanded) { // Make camera to follow user on location change - if(ViewUtil.isPortrait(getActivity())) { + if (ViewUtil.isPortrait(getActivity())) { position = new CameraPosition.Builder() .target(new LatLng(curLatLng.getLatitude() - CAMERA_TARGET_SHIFT_FACTOR_PORTRAIT, curLatLng.getLongitude())) // Sets the new camera target above @@ -416,7 +416,7 @@ public class NearbyMapFragment extends DaggerFragment { mapView.getMapAsync(mapboxMap -> { CameraPosition position; - if(ViewUtil.isPortrait(getActivity())){ + if (ViewUtil.isPortrait(getActivity())){ position = new CameraPosition.Builder() .target(isBottomListSheetExpanded ? new LatLng(curLatLng.getLatitude()- CAMERA_TARGET_SHIFT_FACTOR_PORTRAIT, diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/Sitelinks.java b/app/src/main/java/fr/free/nrw/commons/nearby/Sitelinks.java index 8993db344..f4925af0e 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/Sitelinks.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/Sitelinks.java @@ -100,4 +100,4 @@ public class Sitelinks implements Parcelable { return new Sitelinks(this); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/notification/NotificationActivity.java b/app/src/main/java/fr/free/nrw/commons/notification/NotificationActivity.java index baaad04f5..5af23c340 100644 --- a/app/src/main/java/fr/free/nrw/commons/notification/NotificationActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/notification/NotificationActivity.java @@ -85,7 +85,7 @@ public class NotificationActivity extends NavigationBaseActivity { private void addNotifications() { Timber.d("Add notifications"); - if(mNotificationWorkerFragment == null){ + if (mNotificationWorkerFragment == null){ Observable.fromCallable(() -> { progressBar.setVisibility(View.VISIBLE); return controller.getNotifications(); @@ -115,7 +115,7 @@ public class NotificationActivity extends NavigationBaseActivity { } private void setAdapter(List notificationList) { - if(notificationList == null || notificationList.isEmpty()) { + if (notificationList == null || notificationList.isEmpty()) { ViewUtil.showSnackbar(relativeLayout, R.string.no_notifications); return; } diff --git a/app/src/main/java/fr/free/nrw/commons/notification/NotificationType.java b/app/src/main/java/fr/free/nrw/commons/notification/NotificationType.java index b83b23b2a..0386ead95 100644 --- a/app/src/main/java/fr/free/nrw/commons/notification/NotificationType.java +++ b/app/src/main/java/fr/free/nrw/commons/notification/NotificationType.java @@ -24,4 +24,4 @@ public enum NotificationType { } return UNKNOWN; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/notification/NotificationUtils.java b/app/src/main/java/fr/free/nrw/commons/notification/NotificationUtils.java index e7c87d3f4..095a8a666 100644 --- a/app/src/main/java/fr/free/nrw/commons/notification/NotificationUtils.java +++ b/app/src/main/java/fr/free/nrw/commons/notification/NotificationUtils.java @@ -193,7 +193,7 @@ public class NotificationUtils { private static String getNotificationIconUrl(Node document) { String format = "%s%s"; Node iconUrl = getNode(getModel(document), "iconUrl"); - if(iconUrl == null) { + if (iconUrl == null) { return null; } else { String url = iconUrl.getTextContent(); diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/QuizActivity.java b/app/src/main/java/fr/free/nrw/commons/quiz/QuizActivity.java index 10b808b1f..92075864e 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/QuizActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/QuizActivity.java @@ -51,7 +51,7 @@ public class QuizActivity extends AppCompatActivity { */ @OnClick(R.id.next_button) public void setNextQuestion(){ - if( questionIndex <= quiz.size() && (positiveAnswer.isChecked() || negativeAnswer.isChecked())) { + if ( questionIndex <= quiz.size() && (positiveAnswer.isChecked() || negativeAnswer.isChecked())) { evaluateScore(); } else if ( !positiveAnswer.isChecked() && !negativeAnswer.isChecked()){ AlertDialog.Builder alert = new AlertDialog.Builder(this); @@ -107,11 +107,11 @@ public class QuizActivity extends AppCompatActivity { * to evaluate score and check whether answer is correct or wrong */ public void evaluateScore() { - if((quiz.get(questionIndex).isAnswer() && positiveAnswer.isChecked()) || + if ((quiz.get(questionIndex).isAnswer() && positiveAnswer.isChecked()) || (!quiz.get(questionIndex).isAnswer() && negativeAnswer.isChecked()) ){ customAlert(getResources().getString(R.string.correct),quiz.get(questionIndex).getAnswerMessage() ); score++; - } else{ + } else { customAlert(getResources().getString(R.string.wrong), quiz.get(questionIndex).getAnswerMessage()); } } @@ -127,12 +127,12 @@ public class QuizActivity extends AppCompatActivity { alert.setMessage(Message); alert.setPositiveButton(R.string.continue_message, (dialog, which) -> { questionIndex++; - if(questionIndex == quiz.size()){ + if (questionIndex == quiz.size()) { Intent i = new Intent(QuizActivity.this, QuizResultActivity.class); dialog.dismiss(); i.putExtra("QuizResult",score); startActivity(i); - }else { + } else { displayQuestion(); } }); diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/QuizChecker.java b/app/src/main/java/fr/free/nrw/commons/quiz/QuizChecker.java index 654c08fa9..7ae2cbe79 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/QuizChecker.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/QuizChecker.java @@ -73,7 +73,7 @@ public class QuizChecker { */ private void setTotalUploadCount(int uploadCount) { totalUploadCount = uploadCount - countPref.getInt(UPLOAD_SHARED_PREFERENCE,0); - if( totalUploadCount < 0){ + if ( totalUploadCount < 0){ totalUploadCount = 0; countPref.edit().putInt(UPLOAD_SHARED_PREFERENCE,0).apply(); } @@ -104,7 +104,7 @@ public class QuizChecker { */ private void setRevertParameter(int revertCountFetched) { revertCount = revertCountFetched - revertPref.getInt(REVERT_SHARED_PREFERENCE,0); - if(revertCount < 0){ + if (revertCount < 0){ revertCount = 0; revertPref.edit().putInt(REVERT_SHARED_PREFERENCE, 0).apply(); } @@ -116,7 +116,7 @@ public class QuizChecker { * to check whether the criterion to call quiz is satisfied */ private void calculateRevertParameter() { - if( revertCount < 0 || totalUploadCount < 0){ + if ( revertCount < 0 || totalUploadCount < 0){ revertPref.edit().putInt(REVERT_SHARED_PREFERENCE, 0).apply(); countPref.edit().putInt(UPLOAD_SHARED_PREFERENCE,0).apply(); return; diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java b/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java index c5e138b07..18441146e 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/QuizResultActivity.java @@ -57,7 +57,7 @@ public class QuizResultActivity extends AppCompatActivity { ButterKnife.bind(this); setSupportActionBar(toolbar); - if( getIntent() != null) { + if ( getIntent() != null) { Bundle extras = getIntent().getExtras(); int score = extras.getInt("QuizResult"); setScore(score); diff --git a/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java b/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java index 5de64a62b..79756871d 100644 --- a/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java +++ b/app/src/main/java/fr/free/nrw/commons/quiz/RadioGroupHelper.java @@ -58,7 +58,7 @@ public class RadioGroupHelper { */ View.OnClickListener onClickListener = v -> { for (CompoundButton rb : radioButtons) { - if(rb != v) rb.setChecked(false); + if (rb != v) rb.setChecked(false); } }; -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java b/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java index 54b462097..ecfbe14e0 100644 --- a/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/settings/SettingsActivity.java @@ -67,4 +67,4 @@ public class SettingsActivity extends NavigationBaseActivity { return super.onOptionsItemSelected(item); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/ui/widget/CompatTextView.java b/app/src/main/java/fr/free/nrw/commons/ui/widget/CompatTextView.java index abe2e2554..22ae33ec6 100644 --- a/app/src/main/java/fr/free/nrw/commons/ui/widget/CompatTextView.java +++ b/app/src/main/java/fr/free/nrw/commons/ui/widget/CompatTextView.java @@ -97,4 +97,4 @@ public class CompatTextView extends AppCompatTextView { a.recycle(); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/ui/widget/HtmlTextView.java b/app/src/main/java/fr/free/nrw/commons/ui/widget/HtmlTextView.java index 4e73776c1..2f6f08105 100644 --- a/app/src/main/java/fr/free/nrw/commons/ui/widget/HtmlTextView.java +++ b/app/src/main/java/fr/free/nrw/commons/ui/widget/HtmlTextView.java @@ -48,4 +48,4 @@ public class HtmlTextView extends AppCompatTextView { return Html.fromHtml(source); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/upload/ExistingFileAsync.java b/app/src/main/java/fr/free/nrw/commons/upload/ExistingFileAsync.java index f74c40867..7d59a7568 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/ExistingFileAsync.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/ExistingFileAsync.java @@ -92,4 +92,4 @@ public class ExistingFileAsync extends AsyncTask { callback.onResult(Result.NO_DUPLICATE); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/upload/FileUtils.java b/app/src/main/java/fr/free/nrw/commons/upload/FileUtils.java index 0cd45c189..2536909b0 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/FileUtils.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/FileUtils.java @@ -166,7 +166,7 @@ public class FileUtils { returnPath = uri.getPath(); } - if(returnPath == null) { + if (returnPath == null) { //fetching path may fail depending on the source URI and all hope is lost //so we will create and use a copy of the file, which seems to work String copyPath = null; @@ -377,4 +377,4 @@ public class FileUtils { } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/upload/MultipleShareActivity.java b/app/src/main/java/fr/free/nrw/commons/upload/MultipleShareActivity.java index 1349ed773..703e26657 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/MultipleShareActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/MultipleShareActivity.java @@ -256,7 +256,7 @@ public class MultipleShareActivity extends AuthenticatedActivity public void onPositiveButtonClicked() { //If the user is willing to give us the permission //But had somehow previously choose never ask again, we take him to app settings to manually enable permission - if(null== permissionDeniedResponse){ + if (null== permissionDeniedResponse){ //Dexter returned null, lets see if this ever happens return; } @@ -490,4 +490,4 @@ public class MultipleShareActivity extends AuthenticatedActivity } super.onStop(); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java b/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java index 6757c8419..9da820a7e 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java @@ -662,7 +662,7 @@ public class ShareActivity public boolean onKeyDown(int keyCode, KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_BACK: - if(isZoom) { + if (isZoom) { onZoomOutFabClicked(); return true; } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadController.java b/app/src/main/java/fr/free/nrw/commons/upload/UploadController.java index 222757f54..ce69110cc 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadController.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadController.java @@ -112,7 +112,7 @@ public class UploadController { Timber.d("Wikidata entity ID received from Share activity is %s", wikiDataEntityId); //TODO: Modify this to include coords Account currentAccount = sessionManager.getCurrentAccount(); - if(currentAccount == null) { + if (currentAccount == null) { Timber.d("Current account is null"); ViewUtil.showLongToast(context, context.getString(R.string.user_not_logged_in)); sessionManager.forceLogin(context); diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java b/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java index 488517121..2eae7b8f5 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadService.java @@ -230,7 +230,7 @@ public class UploadService extends HandlerService { //As the fileInputStream is null there's no point in continuing the upload process //mwapi.upload accepts a NonNull input stream - if(fileInputStream == null) { + if (fileInputStream == null) { Timber.d("File not found"); return; } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UrlLicense.java b/app/src/main/java/fr/free/nrw/commons/upload/UrlLicense.java index d3274bf2c..53aaaa106 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UrlLicense.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/UrlLicense.java @@ -62,7 +62,7 @@ public class UrlLicense { urlLicense.put("zh","https://commons.wikimedia.org/wiki/Commons:Licensing/zh"); } public String getLicenseUrl ( String language){ - if(urlLicense.containsKey(language)) { + if (urlLicense.containsKey(language)) { return urlLicense.get(language); } else { return urlLicense.get("en"); diff --git a/app/src/main/java/fr/free/nrw/commons/utils/FileUtils.java b/app/src/main/java/fr/free/nrw/commons/utils/FileUtils.java index d8e569564..26ab5b2ca 100644 --- a/app/src/main/java/fr/free/nrw/commons/utils/FileUtils.java +++ b/app/src/main/java/fr/free/nrw/commons/utils/FileUtils.java @@ -66,7 +66,7 @@ public class FileUtils { */ public static boolean checkIfDirectoryExists(String pathToCheck) { File director = new File(pathToCheck); - if(director.exists() && director.isDirectory()) { + if (director.exists() && director.isDirectory()) { return true; } else { return false; diff --git a/app/src/main/java/fr/free/nrw/commons/utils/StringSortingUtils.java b/app/src/main/java/fr/free/nrw/commons/utils/StringSortingUtils.java index e409b856d..1b321ec07 100644 --- a/app/src/main/java/fr/free/nrw/commons/utils/StringSortingUtils.java +++ b/app/src/main/java/fr/free/nrw/commons/utils/StringSortingUtils.java @@ -44,4 +44,4 @@ public class StringSortingUtils { double distanceBetweenStrings = new Levenshtein().distance(longer, shorter); return (longerLength - distanceBetweenStrings) / (double) longerLength; } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/utils/UriDeserializer.java b/app/src/main/java/fr/free/nrw/commons/utils/UriDeserializer.java index ad37b27fc..9be11d295 100644 --- a/app/src/main/java/fr/free/nrw/commons/utils/UriDeserializer.java +++ b/app/src/main/java/fr/free/nrw/commons/utils/UriDeserializer.java @@ -15,4 +15,4 @@ public class UriDeserializer implements JsonDeserializer { final JsonDeserializationContext context) throws JsonParseException { return Uri.parse(src.getAsString()); } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/utils/ViewUtil.java b/app/src/main/java/fr/free/nrw/commons/utils/ViewUtil.java index af71e826d..ed6513ca2 100644 --- a/app/src/main/java/fr/free/nrw/commons/utils/ViewUtil.java +++ b/app/src/main/java/fr/free/nrw/commons/utils/ViewUtil.java @@ -15,7 +15,7 @@ public class ViewUtil { public static final String SHOWCASE_VIEW_ID_3 = "SHOWCASE_VIEW_ID_3"; public static void showSnackbar(View view, int messageResourceId) { - if(view.getContext() == null) { + if (view.getContext() == null) { return; } @@ -32,7 +32,7 @@ public class ViewUtil { public static boolean isPortrait(Context context) { Display orientation = ((Activity)context).getWindowManager().getDefaultDisplay(); - if(orientation.getWidth() < orientation.getHeight()){ + if (orientation.getWidth() < orientation.getHeight()){ return true; } else { return false; diff --git a/app/src/main/java/fr/free/nrw/commons/widget/PicOfDayAppWidget.java b/app/src/main/java/fr/free/nrw/commons/widget/PicOfDayAppWidget.java index 22bea67b3..fc87f7abb 100644 --- a/app/src/main/java/fr/free/nrw/commons/widget/PicOfDayAppWidget.java +++ b/app/src/main/java/fr/free/nrw/commons/widget/PicOfDayAppWidget.java @@ -128,4 +128,4 @@ public class PicOfDayAppWidget extends AppWidgetProvider { public void onDisabled(Context context) { // Enter relevant functionality for when the last widget is disabled } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditListenerImpl.java b/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditListenerImpl.java index 407c24711..a97d0eded 100644 --- a/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditListenerImpl.java +++ b/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditListenerImpl.java @@ -17,4 +17,4 @@ public class WikidataEditListenerImpl extends WikidataEditListener { wikidataP18EditListener.onWikidataEditSuccessful(); } } -} \ No newline at end of file +} diff --git a/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditService.java b/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditService.java index 0a7c0b8ec..6b0c52cb3 100644 --- a/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditService.java +++ b/app/src/main/java/fr/free/nrw/commons/wikidata/WikidataEditService.java @@ -48,12 +48,12 @@ public class WikidataEditService { * @param fileName */ public void createClaimWithLogging(String wikidataEntityId, String fileName) { - if(wikidataEntityId == null) { + if (wikidataEntityId == null) { Timber.d("Skipping creation of claim as Wikidata entity ID is null"); return; } - if(fileName == null) { + if (fileName == null) { Timber.d("Skipping creation of claim as fileName entity ID is null"); return; } From c8a8e5b71488f27ea069d47c56f0b5dc7a50aa65 Mon Sep 17 00:00:00 2001 From: Rulino <43948534+Rulino@users.noreply.github.com> Date: Mon, 5 Nov 2018 00:44:39 +0100 Subject: [PATCH 06/21] Nearby places icons localization bug fix (#1947) * Changed the places icon selection from english text to QID --- .../free/nrw/commons/nearby/NearbyPlaces.java | 11 ++++- .../fr/free/nrw/commons/nearby/Place.java | 45 ++++++++++--------- 2 files changed, 33 insertions(+), 23 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyPlaces.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyPlaces.java index f9d35d63e..9e10ca8c4 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyPlaces.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyPlaces.java @@ -103,12 +103,19 @@ public class NearbyPlaces { String point = fields[0]; String wikiDataLink = Utils.stripLocalizedString(fields[1]); String name = Utils.stripLocalizedString(fields[2]); + + //getting icon link here + String identifier = Utils.stripLocalizedString(fields[3]); + //getting the ID which is at the end of link + identifier = identifier.split("/")[Utils.stripLocalizedString(fields[3]).split("/").length-1]; + //replaced the extra > char from fields + identifier = identifier.replace(">",""); + String type = Utils.stripLocalizedString(fields[4]); String icon = fields[5]; String wikipediaSitelink = Utils.stripLocalizedString(fields[7]); String commonsSitelink = Utils.stripLocalizedString(fields[8]); String category = Utils.stripLocalizedString(fields[9]); - Timber.v("Name: " + name + ", type: " + type + ", category: " + category + ", wikipediaSitelink: " + wikipediaSitelink + ", commonsSitelink: " + commonsSitelink); double latitude; @@ -127,7 +134,7 @@ public class NearbyPlaces { places.add(new Place( name, - Place.Label.fromText(type), // list + Place.Label.fromText(identifier), // list type, // details Uri.parse(icon), new LatLng(latitude, longitude, 0), diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/Place.java b/app/src/main/java/fr/free/nrw/commons/nearby/Place.java index b13f63bc2..7635ac06f 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/Place.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/Place.java @@ -121,27 +121,30 @@ public class Place { */ public enum Label { - BUILDING("building", R.drawable.round_icon_generic_building), - HOUSE("house", R.drawable.round_icon_house), - COTTAGE("cottage", R.drawable.round_icon_house), - FARMHOUSE("farmhouse", R.drawable.round_icon_house), - CHURCH("church", R.drawable.round_icon_church), - RAILWAY_STATION("railway station", R.drawable.round_icon_railway_station), - GATEHOUSE("gatehouse", R.drawable.round_icon_gatehouse), - MILESTONE("milestone", R.drawable.round_icon_milestone), - INN("inn", R.drawable.round_icon_house), - CITY("city", R.drawable.round_icon_city), - SECONDARY_SCHOOL("secondary school", R.drawable.round_icon_school), - EDU("edu", R.drawable.round_icon_school), - ISLE("isle", R.drawable.round_icon_island), - MOUNTAIN("mountain", R.drawable.round_icon_mountain), - AIRPORT("airport", R.drawable.round_icon_airport), - BRIDGE("bridge", R.drawable.round_icon_bridge), - ROAD("road", R.drawable.round_icon_road), - FOREST("forest", R.drawable.round_icon_forest), - PARK("park", R.drawable.round_icon_park), - RIVER("river", R.drawable.round_icon_river), - WATERFALL("waterfall", R.drawable.round_icon_waterfall), + BUILDING("Q41176", R.drawable.round_icon_generic_building), + HOUSE("Q3947", R.drawable.round_icon_house), + COTTAGE("Q5783996", R.drawable.round_icon_house), + FARMHOUSE("Q489357", R.drawable.round_icon_house), + CHURCH("Q16970", R.drawable.round_icon_church), //changed from church to church building + RAILWAY_STATION("Q55488", R.drawable.round_icon_railway_station), + GATEHOUSE("Q277760", R.drawable.round_icon_gatehouse), + MILESTONE("Q10145", R.drawable.round_icon_milestone), + INN("Q256020", R.drawable.round_icon_house), //Q27686 + HOTEL("Q27686", R.drawable.round_icon_house), + CITY("Q515", R.drawable.round_icon_city), + UNIVERSITY("Q3918",R.drawable.round_icon_school), //added university + SCHOOL("Q3914", R.drawable.round_icon_school), //changed from "secondary school" to school + EDUCATION("Q8434", R.drawable.round_icon_school), //changed from edu to education, there is no id for "edu" + ISLE("Q23442", R.drawable.round_icon_island), + MOUNTAIN("Q8502", R.drawable.round_icon_mountain), + AIRPORT("Q1248784", R.drawable.round_icon_airport), + BRIDGE("Q12280", R.drawable.round_icon_bridge), + ROAD("Q34442", R.drawable.round_icon_road), + FOREST("Q4421", R.drawable.round_icon_forest), + PARK("Q22698", R.drawable.round_icon_park), + RIVER("Q4022", R.drawable.round_icon_river), + WATERFALL("Q34038", R.drawable.round_icon_waterfall), + TEMPLE("Q44539",R.drawable.round_icon_church), UNKNOWN("?", R.drawable.round_icon_unknown); private static final Map TEXT_TO_DESCRIPTION From 784999bb4907d27e5f330ef60b2f71a92964e4a3 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 5 Nov 2018 08:40:45 +0100 Subject: [PATCH 07/21] Localisation updates from https://translatewiki.net. --- app/src/main/res/values-bn/strings.xml | 6 ++++++ app/src/main/res/values-cs/strings.xml | 21 ++++++++++++++++++--- app/src/main/res/values-fi/strings.xml | 11 +++++++++++ 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/app/src/main/res/values-bn/strings.xml b/app/src/main/res/values-bn/strings.xml index c4f886ca2..1b402196d 100644 --- a/app/src/main/res/values-bn/strings.xml +++ b/app/src/main/res/values-bn/strings.xml @@ -294,4 +294,10 @@ নির্বাচিত ছবি স্তর কমন্স বিজ্ঞপ্তি + বুকমার্ক + বুকমার্ক + চিত্র + অবস্থান + বুকমার্ক + বুকমার্ক diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 635c85300..267a93eaf 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -167,7 +167,7 @@ Vyhněte se dílům chráněným autorským právem, která jste našli na internetu, jako i obrázkům plakátů, přebalů knih apod. Myslíte, že rozumíte? Ano! - + <u>Více informací</u> Kategorie Načítá se… Nevybrány @@ -250,7 +250,7 @@ Uložit obrázky pořízené fotoaparátem, jenž je součástí této aplikace Přihlásit se k účtu Odeslat log - Odeslat log vývojářům e-mailem + Odeslat log vývojářům e-mailem za účelem odstranění problémů s aplikací. Poznámka: Logy mohou obsahovat identifikační údaje. Nebyl nalezen žádný webový prohlížeč k otevření URL Chyba! URL nenalezeno Navrhnout na smazání @@ -262,6 +262,8 @@ Opravdu chcete přeskočit přihlášení? Nebude možné nahrávat obrázky. K použití této funkce se musíte přihlásit + Zkopírovat wikitext do schránky + Wikitext byl zkopírován do schránky Vaše umístění se nezměnilo. Umístění není dostupné. Vyžadováno povolení k zobrazení seznamu blízkých míst @@ -282,7 +284,7 @@ Internet je nedostupný Internet je dostupný Při načítání oznámení došlo k chybě - Nebyly nalezeny žádné oznámení + Nebyla nalezena žádné oznámení <u>Přeložit</u> Jazyky Vyberte jazyk, pro který chcete odeslat překlady @@ -351,5 +353,18 @@ Počet obrázků, které jste nahrál/a na Commons, ať už jakýmkoliv způsobem Procentuální množství obrázků, které jste nahrál/a na Commons a nebyly smazány Počet obrázků, které jste nahrál/a na Commons a jsou použity v projektech Wikimedia + Chyba! Notifikace z Commons + Povolení k ukládání + Potřebujeme povolení k přístupu k externí paměti vašeho zařízení, abychom mohli nahrávat obrázky. + Záložky + Záložky + Obrázky + Místa + Přidat/Odstranit ze záložek + Záložky + Nemáte zatím žádné záložky + Záložky + Záznam logu započal. Prosím RESTARTUJTE aplikaci, proveďte akci, kterou si přejete zaznamenat, a potom znovu odešlete log. + Vítejte na Commons!\n\nNahrajte svá první média pomocí tlačítek fotoaparátu nebo galerie nahoře. diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index 6075fddac..bb7e8b342 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -318,4 +318,15 @@ Saavutukset TILASTOT TASO + Kuvia tallennettu + Kuvia käytetty + Kirjanmerkit + Kirjanmerkit + Kuvat + Sijainnit + Lisää kirjanmerkkeihin/Poista kirjanmerkeistä + Kirjanmerkit + Et ole lisännyt yhtään kirjanmerkkejä + Kirjanmerkit + Tervetuloa Commonsiin!\n\nTallenna ensimmäinen mediasi koskettamalla kamera tai galleriakuvaketta yllä. From c96a4aff4013fc9babd98363f8ebe92a624e6dc7 Mon Sep 17 00:00:00 2001 From: Adam Jones Date: Mon, 5 Nov 2018 09:31:15 +0000 Subject: [PATCH 08/21] Update issue and PR templates (#1972) * Update ISSUE_TEMPLATE.md with wiki link and minor formatting changes * Update PULL_REQUEST_TEMPLATE.md making the formatting more similar to the issue template, simplifying some language and improving links --- ISSUE_TEMPLATE.md | 16 ++++++++++------ PULL_REQUEST_TEMPLATE.md | 20 +++++++++----------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md index 8feca4268..12ff064e2 100644 --- a/ISSUE_TEMPLATE.md +++ b/ISSUE_TEMPLATE.md @@ -2,24 +2,28 @@ Summarize your issue in one sentence (what goes wrong, what did you expect to happen) -_Before creating an issue, please search the existing issues to see if a similar one has already been created. You can search issues by specific labels (e.g. `label:nearby `) or just by typing keywords into the search filter._ +_Before creating an issue, please search the existing issues to see if a similar one has already been created. You can search issues by specific labels (e.g. `label:nearby`) or just by typing keywords into the search filter._ **Steps to reproduce:** How can we reproduce the issue? What did you expect the app to do, and what did you see instead? -**Add System logs:** +**System logs:** +``` Add logcat files here (if possible). +Need help? See https://github.com/commons-app/apps-android-commons/wiki/Getting-app-logs-from-Android-Studio +``` + **Device and Android version:** -What make and model device (e.g., Samsung J7) did you encounter this on? What Android -version (e.g., Android 4.0 Ice Cream Sandwich or Android 6.0 Marshmallow) are you running? Is it - the stock version from the manufacturer or a custom ROM ? +What make and model device (e.g., Samsung J7) did you encounter this on? +What Android version (e.g., Android 4.0 Ice Cream Sandwich or Android 6.0 Marshmallow) are you running? +Is it the stock version from the manufacturer or a custom ROM ? - **Commons app version:** +**Commons app version:** You can find this information by going to the navigation drawer in the app and tapping 'About'. If you are building from our codebase instead of downloading the app, please also mention the branch and build variant (e.g. master and prodDebug). diff --git a/PULL_REQUEST_TEMPLATE.md b/PULL_REQUEST_TEMPLATE.md index 37e104d14..50634fa60 100644 --- a/PULL_REQUEST_TEMPLATE.md +++ b/PULL_REQUEST_TEMPLATE.md @@ -1,19 +1,17 @@ -## Title (required) +**Description (required)** -Fixes #{GitHub issue number and title (Please do not forget adding title) } +Fixes #{GitHub issue number} {Github issue title} -## Description (required) +What changes did you make and why? -Fixes #{GitHub issue number and title} +**Tests performed (required)** -{Describe the changes made and why they were made.} +Tested {build variant, e.g. ProdDebug} on {name of device or emulator} with API level {API level}. -## Tests performed (required) +**Screenshots showing what changed (optional - for UI changes)** -Tested on {API level & name of device/emulator}, with {build variant, e.g. ProdDebug}. +Need help? See https://support.google.com/android/answer/9075928 -## Screenshots showing what changed (optional) - -{Only for user interface changes, otherwise remove this section. See [how to take a screenshot](https://android.stackexchange.com/questions/1759/how-to-take-a-screenshot-with-an-android-device)} +--- -_Note: Please ensure that you have read CONTRIBUTING.md if this is your first pull request._ \ No newline at end of file +_Note: Please ensure that you have read CONTRIBUTING.md if this is your first pull request._ From 57e7c154b4f3b985997d578de2441ffbd7bfa4bc Mon Sep 17 00:00:00 2001 From: Adam Jones Date: Mon, 5 Nov 2018 09:47:54 +0000 Subject: [PATCH 09/21] Update README build status image to represent master branch (#1974) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 57272bdcf..28b923351 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Wikimedia Commons Android app [![Build status](https://api.travis-ci.org/commons-app/apps-android-commons.svg)](https://travis-ci.org/commons-app/apps-android-commons) +# Wikimedia Commons Android app [![Build status](https://api.travis-ci.org/commons-app/apps-android-commons.svg?branch=master)](https://travis-ci.org/commons-app/apps-android-commons) The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Download the app [here][1], or view our [website][2]. From 72e7439b815185a861dfe6f29ead1474378d6ef2 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Thu, 8 Nov 2018 09:54:21 +0100 Subject: [PATCH 10/21] Localisation updates from https://translatewiki.net. --- app/src/main/res/values-br/strings.xml | 42 +++++++++++++++++-- app/src/main/res/values-fa/strings.xml | 57 +++++++++++++++++++++++++- app/src/main/res/values-gl/strings.xml | 11 ++++- 3 files changed, 104 insertions(+), 6 deletions(-) diff --git a/app/src/main/res/values-br/strings.xml b/app/src/main/res/values-br/strings.xml index 90ede0b76..bee0df5c9 100644 --- a/app/src/main/res/values-br/strings.xml +++ b/app/src/main/res/values-br/strings.xml @@ -8,8 +8,11 @@ * Y-M D --> + Ergerzhout + Ergerzhout Neuz Hollek + Sonjoù Lec\'hiadur Commons @@ -25,7 +28,7 @@ Kevreet oc\'h ! Kudenn gevreañ ! N\'eo ket bet kavet ar restr. Klask gant unan all. - Dilesadur c\'hwitet! + Dilesadur c\'hwitet, kevreit en-dro mar plij Kroget da enporzhiañ! %1$s bet enporzhiet ! Pouezit evit gwelet hoc\'h enporzhiadenn @@ -53,6 +56,7 @@ Roit un titl d\'ar restr-mañ, mar plij Deskrivadur Ne c\'haller ket kevreañ - rouedad sac\'het + Ne c\'haller ket kevreañ - gwiriit hoc\'h anv implijer hag ho ker-tremen mar plij Re a daolioù-esae. Klaskit en-dro a-benn ur pennadig amzer. Hon digarezit, prennet eo bet an implijer-mañ e Commons Rankout a rit reiñ ho kod dilesa gant daou faktor. @@ -64,6 +68,7 @@ Klask rummadoù Enrollañ Freskaat + Roll Diwerededkaet eo ar GPS war hoc\'h ardivink.\nHa c\'hoant ho peus da weredekaat anezhañ ? Gweredekaat ar GPS Enporzhiadenn ebet c\'hoazh ! @@ -85,6 +90,7 @@ Rummadoù Arventennoù En em enskrivañ + Rummad Diwar-benn Meziant frank a wirioù embannet dindan <a href=\"https://github.com/commons-app/apps-android-commons/blob/master/COPYING\">an Aotre-implijout Apache v2</a>. Merkoù kenwerzhel eus Diazezadur Wikimedia eo Wikimedia Commons hag e logoioù. Gallout a reont bezañ implijet gant aotre an Diazezadur. N\'omp nag aprouet gant Diazezadur Wiikimedia na stag outañ. Krouiñ ur <a href=\"https://github.com/commons-app/apps-android-commons/issues\">gemennadenn GitHub nevez</a> evit kelaouiñ a-zivout un draen bennak pe bet kinnigoù. @@ -146,14 +152,15 @@ Diarbenn an dafar gwarezet a vez kavet ganeoc\'h war ar Genrouedad, hag ivez ar skeudennoù skritelloù, ar goloioù levrioù ha kement zo… Ha soñjal a rit eo mat ? Ya ! + <u>Gouzout hiroc\'h</u> Rummadoù O kargañ… Hini ebet diuzet Deskrivadur ebet Aotre-implijout dizanv Freskaat - Aotre rekis : lenn ur stokañ diavaez. Hep se, n\'hall ket an arload mont en-dro. - Aotre ret ; skrivañ war al lec\'h stokañ diavaez. Ne c\'hall ket an arload mont en-dro hep an dra-se. + Aotre rekis : lenn ur stokañ diavaez. N\'hall ket an arload tizhout ho palier hep an dra-se. + Aotre ret ; skrivañ war al lec\'h stokañ diavaez. Ne c\'hall ket an arload tizhout ho kamera hep an dra-se. Aotre diret : kaout al lec\'hiadur red evit kinnig rummadoù Mat eo Lec\'hioù nes @@ -166,6 +173,7 @@ Titl ar media Deskrivadur Amañ e lakaer titl ar media. Gallout a ra bezañ hir-mat ha mont dre meur a linenn. Spi hon eus e vo bravik an disoc\'h koulskoude. + Aozer Deiziad enporzhiañ Aotre-implijout Daveennoù @@ -211,12 +219,40 @@ N\'eus bet kavet deskrivadur ebet Pajennad restroù Commons Elfenn Wikidata + Pennad Wikipedia Reiñ ar gwir Implijout ar stokañ diavaez Enrollit ar skeudennoù tennet gant luc\'hskeudennerez ho penveg Kevreit ouzh ho kont + Fazi ! N\'eo ket bet kavet an URL + Kinnig evit lemel + Meneget eo bet ar skeudenn evit lemel. + Diskwel er merdeer + Lezel a-gostez + Kevreañ N\'eo ket cheñchet al lec\'hiadur. Kaout urzhioù Lenn ar pennad + WIKIDATA + WIKIPEDIA + <u>FAG</u> + Lezel an tutorial a-gostez + <u>Treiñ</u> + Yezhoù + Kenderc\'hel + Nullañ + Klask en-dro + Mat eo ! + N\'eus bet kavet skeudenn ebet ! + Ur fazi zo c\'hoarvezet p\'eo bet karget ar skeudennoù. + Enporzhiet gant:%1$s + Stanket oc\'h bet ha ne c\'hallit ket mui kemmañ war Commons Skeudenn an deiz + Skeudenn an deiz + Klask + Klask e Commons + N\'eus bet kavet skeudenn ebet hag a sell ouzh 1$s + Klask + Enklaskoù nevez : + Rekedoù enklask diwezhañ diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index 6eb562557..b0be225bf 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -3,6 +3,7 @@ * Arash.pt * Ebraminio * Fatemi127 +* Mehdi * Mjbmr * Omidh * Ommmmid @@ -89,6 +90,7 @@ رده‌ها تنظیمات ثبت نام + تصاویر برگزیده رده درباره اپلیکیشن ویکی‌انبار بنیاد ویکی‌مدیا یک نرم‌افزار آزاد است که توسط کاربران داوطلب و پاداش‌بگیر ایجاد و نگهداری می‌شود. بنیاد ویکی‌مدیا در ایجاد، نگهداری و توسعهٔ آن دخالتی ندارد. @@ -146,13 +148,14 @@ از رسانه‌ها و پوسترهایی و غیره حق‌تکثیردار که در اینترنت یا جلد کتاب‌ها می‌بابید، اجتناب کنبد. آیا متوجه منظور شدید؟ بله! + <u>اطلاعات بیشتر</u> رده‌ها در حال بارگیری… هیچ‌کدام انتخاب‌نشده بدون توضیحات مجوز ناشناخته تازه‌کردن - اجازه‌های مورد نیاز: مطالعهٔ حافظهٔ خارجی. اپلیکیشن بدون آن نمی‌تواند کار کند. + اجازه‌های مورد نیاز: مطالعهٔ حافظهٔ خارجی. اپلیکیشن بدون آن نمی‌تواند کار کند. اجازه‌های مورد نیاز: نوشتن حافظهٔ خارجی. اپلیکیشن بدون آن نمی‌تواند کار کند. اجازه‌های اختیاری: دریافت موقعیت برای پیشنهاد رده تأیید @@ -166,6 +169,7 @@ عنوان رسانه توضیح توضیحات رسانه اینجا می‌روند. امکان دارد طولانی باشد و نیاز به چند خط شدن داشته باشد. امیدواریم خوب دیده شود. + نویسنده تاریخ بارگذاری مجوز مختصات‌ها @@ -186,6 +190,8 @@ تصویر پس‌زمینه خطای تصویر رسانه تصویری یافت نشد + هیچ زیررده‌ای یافت نشد + هیچ رده مادری یافت نشد بارگذاری تصویر کوه زائو لاما @@ -208,10 +214,12 @@ خروج آموزش آگاه‌سازی‌ها + برگزیده مکان‌های اطراف بدون اجازه دادن به مکان‌یاب مقدور نیست توضیحی یافت نشد صفحهٔ دروند در ویکی‌انبار آیتم ویکی‌داده + مقالهٔ ویکی‌پدیا خطا در زمان دریافت تصاویر عنوانی توصیفی و یکتا برای پرونده که به عنوان نام پرونده در نظر گرفته خواهد شد. ترجیحاً به زبان ساده باشد، می‌توانید فاصله هم به کار ببرید. پسوند پرونده را ننویسید. لطفاً تصویر را تا حد توان شرح دهید. کجا گرفته شده‌است؟ شامل چه چیزی می‌شود؟ لطفاً اشیا یا افراد را شرح دهید. اطلاعاتی که به راحتی قابل مشاهده هستند را صرفه‌نظر کنید. اگر چیزی در تصویر غیر طبیعی به نظر می‌رسد آن را شرح دهید. @@ -222,9 +230,14 @@ ذخیرهٔ تصویرهای گرفته شده توسط دوربین درونکار اپلیکیشن بر روی دستگاه شما ورود به حساب کاربریتان ارسال فایل سیاهه - ارسال فایل سیاهه به‌وسیلهٔ ایمیل برای توسعه‌دهندگان + ارسال فایل سیاهه به‌وسیلهٔ ایمیل برای توسعه‌دهندگان برای رفع مشکل خطای اپلیکیشن. توجه: سیاه‌ها دارای اطلاعات شناسایی هستند + مرورگر اینترنتی برای باز کردن نشانی یافت نشد + خطا! نشانی یافت نشد + نامزد شده برای حذف . مشاهده در مرورگر + رها کردن + ورود به سامانه مکان تغییر نکرده‌است. مکان موجود نیست. برای نمایش مکان‌ّای اطراف نیاز به اجازه است. @@ -249,4 +262,44 @@ ادامه لغو سعى دوباره + فهمیدم! + تصویری یافت نشد! + خطایی هنگام بارگذاری پرونده‌ها رخ داد. + بارگذاری‌شده توسط: %1$s + شما برای ویرایش در ویکی‌انبار قطع دسترسی شدید + تصویر روز + تصویر روز + جستجو + جستجوی ویکی‌انبار + جستجو + جستجوهای اخیر: + انتخاب به عنوان پس‌زمینه + امتحان + پرسش + نتیجه + ادامه + جواب درست + جواب نادرست + اشتراک اپلیکیشن + +افزودن توضیحات + جستجوی تاریخچهٔ حذف‌شده + دستاوردها + آمارها + تشکر دریافت‌شد + تصاویر برگزیده + سطح + تصاویر بارگذاری شده + تصاویر واگردانی نشده + تصویر استفاده شده + حداقل مورد نیاز: + خطا رخ‌داده! + آگاه‌سازی ویکی‌انبار + اجازه ذخیره + نشانک‌ها + نشانک‌ها + تصویرها + مکان‌ها + افزودن/حذف نشانک‌ها + نشانک‌ها + نشانک‌ها diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml index b076e20b2..c5ede2e05 100644 --- a/app/src/main/res/values-gl/strings.xml +++ b/app/src/main/res/values-gl/strings.xml @@ -351,5 +351,14 @@ Notificación de Commons Permiso de almacenamento Precisamos o seu permiso para acceder ó almacenamento externo do seu dispositivo para cargar imaxes. - Comezou a gravación de rexistros. Por favor reinicie a aplicación, realice a acción que desexa rexistrar, e pulse \"Enviar rexistros\" de novo + Favoritos + Favoritos + Imaxes + Localizacións + Engadir/borrar favoritos + Favoritos + Non engadiu ningún favorito + Favoritos + Comezou a gravación de rexistros. Por favor reinicie a aplicación, realice a acción que desexa rexistrar, e pulse \"Enviar ficheiro de rexistros\" de novo + Benvido a Commonsǃ\n\nCargue o seu primeiro ficheiro premendo na icona da cámara ou da galería enriba. From 2b728718aea0b3b0d4eeda453e36376399a49013 Mon Sep 17 00:00:00 2001 From: Adam Jones Date: Sat, 10 Nov 2018 05:33:03 +0000 Subject: [PATCH 11/21] Remove unused mediawiki api dependency (#1991) --- app/build.gradle | 1 - 1 file changed, 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index b6b68f6a2..2b32d1a3d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,7 +13,6 @@ dependencies { implementation 'ch.acra:acra:4.9.2' - implementation 'org.mediawiki:api:1.3' implementation 'commons-codec:commons-codec:1.10' implementation 'com.github.pedrovgs:renderers:3.3.3' implementation 'com.google.code.gson:gson:2.8.5' From 78af43e95bc938ba7115d6590c4522cf73660933 Mon Sep 17 00:00:00 2001 From: Ashish Kumar Date: Sat, 10 Nov 2018 13:58:55 +0530 Subject: [PATCH 12/21] Categories with pipe suffix (#1873) * Bug fix issue #1826 Changes made : -Certain category names used to show suffixed with strings prefixed with pipe '|'. Removed everything after the pipe. As per the discussion on the thread, its safe to remove everything after the pipe, including the pipe * review suggested changes *Code formatting *Extracted out the index of pipe in a variable *Added issue link in comments --- .../nrw/commons/media/MediaDetailFragment.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java index 8feed101e..43debf323 100644 --- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java @@ -431,8 +431,19 @@ public class MediaDetailFragment extends CommonsDaggerSupportFragment { private void rebuildCatList() { categoryContainer.removeAllViews(); // @fixme add the category items - for (String cat : categoryNames) { - View catLabel = buildCatLabel(cat, categoryContainer); + + //As per issue #1826(see https://github.com/commons-app/apps-android-commons/issues/1826), some categories come suffixed with strings prefixed with |. As per the discussion + //that was meant for alphabetical sorting of the categories and can be safely removed. + for (int i = 0; i < categoryNames.size(); i++) { + String categoryName = categoryNames.get(i); + //Removed everything after '|' + int indexOfPipe = categoryName.indexOf('|'); + if (indexOfPipe != -1) { + categoryName = categoryName.substring(0, indexOfPipe); + //Set the updated category to the list as well + categoryNames.set(i, categoryName); + } + View catLabel = buildCatLabel(categoryName, categoryContainer); categoryContainer.addView(catLabel); } } From 67d639752bafeaad519e0a9ee26dc7990035c14c Mon Sep 17 00:00:00 2001 From: Adam Jones Date: Sun, 11 Nov 2018 07:39:39 +0000 Subject: [PATCH 13/21] Remove libraries section from README (#1988) * Remove libraries section from README * Add wiki link to "libraries used" to README --- README.md | 71 +++++++++++-------------------------------------------- 1 file changed, 14 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index 28b923351..54649a830 100644 --- a/README.md +++ b/README.md @@ -11,37 +11,13 @@ Initially started by the Wikimedia Foundation, this app is now maintained by gra ## Documentation -We try to have an extensive documentation at [our wiki here at Github][5]: +We try to have an extensive documentation at [our wiki here at Github][4]: -* [User Documentation][6] -* [Contributor Documentation][7] - * [Volunteers Welcome!][9] +* [User Documentation][5] +* [Contributor Documentation][6] + * [Volunteers Welcome!][7] * [Developer Documentation][8] - -## Libraries Used ## - -* [Picasso][11] -* [RSS-Parser][12] -* [ViewPagerIndicator][13] -* [PhotoView][14] -* [Acra][15] -* [Renderers][16] -* [Gson][17] -* [Timber][18] -* [Java-String-Similarity][19] -* [ReadMoreTextView][20] -* [MaterialShowcaseView][21] -* [Butterknife][22] -* [OKHttp][23] -* [Okio][24] -* [RxJava][25] -* [JSoup][26] -* [Fresco][27] -* [Stetho][28] -* [Dagger][29] -* [Java-HTTP-Fluent][30] -* [CircleProgressBar][31] -* [Leak Canary][32] + * [Libraries Used][9] ## Contributors ## @@ -60,37 +36,18 @@ Thank you all for your work! ## License ## -This software is open source, licensed under the [Apache License 2.0][4]. - +This software is open source, licensed under the [Apache License 2.0][10]. [1]: https://play.google.com/store/apps/details?id=fr.free.nrw.commons [2]: https://commons-app.github.io/ [3]: https://github.com/commons-app/apps-android-commons/issues -[4]: https://www.apache.org/licenses/LICENSE-2.0 -[5]: https://github.com/commons-app/apps-android-commons/wiki -[6]: https://github.com/commons-app/apps-android-commons/wiki#user-documentation -[7]: https://github.com/commons-app/apps-android-commons/wiki#contributor-documentation + +[4]: https://github.com/commons-app/apps-android-commons/wiki +[5]: https://github.com/commons-app/apps-android-commons/wiki#user-documentation +[6]: https://github.com/commons-app/apps-android-commons/wiki#contributor-documentation +[7]: https://github.com/commons-app/apps-android-commons/wiki/Volunteers-welcome%21 [8]: https://github.com/commons-app/apps-android-commons/wiki#developer-documentation -[9]: https://github.com/commons-app/apps-android-commons/wiki/Volunteers-welcome%21 -[10]: https://meta.wikimedia.org/wiki/Grants:Project/Improve_%27Upload_to_Commons%27_Android_App/Renewal -[11]: https://github.com/square/picasso -[13]: https://github.com/avianey/Android-ViewPagerIndicator -[14]: https://github.com/chrisbanes/PhotoView -[15]: https://github.com/ACRA/acra -[16]: https://github.com/pedrovgs/Renderers -[17]: https://github.com/google/gson -[18]: https://github.com/JakeWharton/timber -[19]: https://github.com/tdebatty/java-string-similarity -[20]: https://github.com/bravoborja/ReadMoreTextView -[21]: https://github.com/deano2390/MaterialShowcaseView -[22]: https://github.com/JakeWharton/butterknife -[23]: https://github.com/square/okhttp -[24]: https://github.com/square/okio -[25]: https://github.com/ReactiveX/RxJava -[27]: https://github.com/facebook/fresco -[28]: https://github.com/facebook/stetho -[29]: https://github.com/google/dagger -[30]: https://github.com/yuvipanda/java-http-fluent/blob/master/src/main/java/in/yuvi/http/fluent/Http.java -[31]: https://github.com/dinuscxj/CircleProgressBar -[32]: https://github.com/square/leakcanary +[9]: https://github.com/commons-app/apps-android-commons/wiki/Libraries-used + +[10]: https://www.apache.org/licenses/LICENSE-2.0 From 629bff596c5483d4e71b52f2b9a5f0823b601515 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 12 Nov 2018 08:36:21 +0100 Subject: [PATCH 14/21] Localisation updates from https://translatewiki.net. --- app/src/main/res/values-fi/strings.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index bb7e8b342..5d4f5d428 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -255,6 +255,8 @@ Haluatko todella ohittaa kirjautumisen? Et voi ladata kuvia. Kirjaudu sisään käyttääksesi tätä ominaisuutta + Kopioi wikiteksti leikepöydälle + Wikiteksti kopioitiin leikepöydälle Sijainti ei ole muuttunut. Sijainti ei käytettävissä. Lupa vaaditaan läheisten paikkojen luettelon näyttämiseen @@ -304,11 +306,16 @@ Onko tämä kuva OK tallennettavaksi? Kysymys Tulos + Kuvat, jotka esittävät teknologiaa tai kulttuuria ovat erittäin tervetulleita Commonsiin. + VAROITUS: Enemmän kuin %1$s tallentamistasi kuvista on poistettu. Jos jatkat poistamista vaativien kuvien tallentamista, tilisi todennäköisesti estetään. + Sait %1$s vastausta oikein. Onnittelut! Valitse yksi kahdesta vaihtoehdosta vastataksesi kysymykseen Istuntosi on vanhentunut. Kirjaudu sisään uudelleen. + Jaa visailusi ystäviesi kanssa! Jatka Oikea vastaus Väärä vastaus + Onko tämä kuvakaappaus OK tallennettavaksi? Jaa sovellus Koordinaatteja ei annettu kuvaa valittaessa Virhe paikkoja haettaessa. @@ -317,9 +324,14 @@ Hakuhistoria poistettu Saavutukset TILASTOT + Kiitos vastaanotettu + Suositellut kuvat TASO Kuvia tallennettu Kuvia käytetty + Jaa saavutuksesi ystäviesi kanssa! + Tapahtui virhe! + Commons-ilmoitus Kirjanmerkit Kirjanmerkit Kuvat From d1144e22ed91f6036702f6d660fa049a3c0800f4 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Thu, 15 Nov 2018 08:11:19 +0100 Subject: [PATCH 15/21] Localisation updates from https://translatewiki.net. --- app/src/main/res/values-ro/strings.xml | 51 +++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml index ea4ad9815..cadd97b5c 100644 --- a/app/src/main/res/values-ro/strings.xml +++ b/app/src/main/res/values-ro/strings.xml @@ -6,14 +6,19 @@ * Strainu --> + Explorare + Explorare Aspect General + Feedback Locație Commons Setări + Încarcă la Commons Nume de utilizator Parolă + Intrați în contul dumneavoastră Commons Beta Autentificare V-aţi uitat parola? Înregistrare @@ -86,11 +91,13 @@ Categorii Setări Înregistrare + Imagini recomandate Categorie Despre Aplicația Wikimedia Commons este un software cu sursă deschisă creat și menținut de bursieri și voluntari ai comunității Wikimedia. Fundația Wikimedia nu este implicată în crearea, dezvoltarea sau mentenanța aplicației. Creați un nou <a href=\"https://github.com/commons-app/apps-android-commons/issues\">tichet pe GitHub</a> pentru a raporta buguri sau sugestii. - <a href=\"https://github.com/commons-app/apps-android-commons/wiki/Privacy-policy\">Politica de confidențialitate</a> + <u>Politica de confidențialitate</u> + <u>Autori</u> Despre Trimitere reacții (prin e-mail) Niciun client de email instalat @@ -101,7 +108,8 @@ Revocare Această imagine va fi licențiată sub %1$s Descarcă - Licență + Licență implicită + Folosiți titlul/descrierea anterioară Obține în mod automat locația curentă Mod de noapte Folosește o temă întunecată @@ -151,9 +159,16 @@ Titlul fișierului Descriere Descrierea fișierului vine aici. Aceasta poate fi destul de lungă și va trebuie distribuită pe mai multe linii. Sperăm totuși că arată bine. + Autor + Data încărcării + Licență + Coordonate + Nefurnizat Deveniți beta-tester Abonați-vă la canalul nostru beta pe Google Play și a obține acces rapid la noi caracteristici și corecții de erori Code 2FA + Limită maximă + Nu pot afișa mai mult de 500 Logoul Commons Site-ul Commons Pagina de Facebook a Commons @@ -180,4 +195,36 @@ Tutorial Notificări Element Wikidata + Vizualizează cu navigatorul + Omite + Autentificare + <u>Dă-ne o notă</u> + <u>FAQ</u> + Sari peste tutorial + Nu aveți internet + Aveți internet + <u>Tranduceți</u> + Limbi + Încărcată de: %1$s + Imaginea zilei + Imaginea zilei + Căutare + Căutare pe Commons + Căutare + Căutări recente: + Quiz + Întrebare + Rezultat + Continuați + Răspuns corect + Răspuns greșit + +Adaugă descriere + Semne de carte + Semne de carte + Imagini + Locuri + Adaugă/scoate din semnele de carte + Semne de carte + Nu ați adăugat niciun semn de carte + Semne de carte From b3312a773efa825e3bda10610a1411d94828b4c7 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 19 Nov 2018 08:36:44 +0100 Subject: [PATCH 16/21] Localisation updates from https://translatewiki.net. --- app/src/main/res/values-diq/strings.xml | 5 +++++ app/src/main/res/values-fa/strings.xml | 22 ++++++++++++++++++++-- app/src/main/res/values-fi/strings.xml | 2 +- 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/app/src/main/res/values-diq/strings.xml b/app/src/main/res/values-diq/strings.xml index a312fcc9d..d10389038 100644 --- a/app/src/main/res/values-diq/strings.xml +++ b/app/src/main/res/values-diq/strings.xml @@ -81,6 +81,7 @@ Kategoriyi Sazi Qeyd be + Kategoriye Heq te cı Qandê yew <a href=\"https://github.com/commons-app/apps-android-commons/issues\">GitHub-cıkewtış</a>ê neweyi rê rapor û teklifan bıaferne. <u>Politikaya nımıtışi</u> @@ -137,7 +138,11 @@ Keye Bar ke Veciyayış + Cı kewe + Zıwani Bıtexelne Anciya bıcerrebne Mı fehm kerd! + Cıgeyrayış + Cıgeyrayış diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml index b0be225bf..504575cec 100644 --- a/app/src/main/res/values-fa/strings.xml +++ b/app/src/main/res/values-fa/strings.xml @@ -2,6 +2,7 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index a4c9ef716..c305de897 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -16,6 +16,12 @@ + + + + + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index bad958661..9cf0363f5 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -3,6 +3,7 @@ #303030 #fafafa + #1a1a1a #0c609c diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index a14377ccc..103be0ac6 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -69,8 +69,8 @@ @string/contributions_subtitle_zero - %1$d upload - %1$d uploads + (%1$d) + (%1$d) Starting %1$d upload @@ -354,8 +354,18 @@ Error occurred! Commons Notification + + Contributions + Nearby + Notifications + Display nearby notification + Tap here to see the nearest place that needs pictures + No nearby places found close to you + List + Storage Permission We need your permission to access the external storage of your device in order to upload images. + You won\'t see the nearest place that needs pictures anymore. However, you can re-enable this notification in Settings if you wish. Bookmarks Bookmarks Pictures diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 26d9c357b..70bec86a3 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,6 +1,8 @@ + + + +