diff --git a/CHANGELOG.md b/CHANGELOG.md index f4250ebd9..59134b236 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,32 @@ # Wikimedia Commons for Android +## v5.0.2 + +- Enhanced multi-upload functionality with user prompts to clarify that all images would share the + same category and depictions. +- Show Wikidata description on currently active Nearby pin to provide more useful information. +- Improve the visibility of map markers by dynamically adjusting their colors based on the app's + theme. The map markers will now appear lighter when the app is in dark mode and darker when the + app is in light mode. This change aims to enhance marker visibility and improve the overall user + experience. +- Added information on where user feedback is posted, helping users track existing feedback and + monitor their own submissions. +- Enhanced the edit location screen of the upload screen by centering the map on the picture's + location from metadata when editing, or on the device's GPS location if metadata is unavailable, + improving accuracy and user experience. +- Ensured the 'Add Location' button is renamed to 'Edit Location' when copying the location of a + recently uploaded image, enhancing clarity and user experience. +- Added a ProgressBar to the media detail screen to indicate image loading status, enhancing user + experience by showing loading progress until the image is fully loaded. +- Fixed an issue where caption and description fields would intermittently disappear when using + voice input, ensuring text remains visible and stable across all entries. +- Fixed a crash that occurred when attempting to remove multiple instances of caption/description + fields after initially adding them. +- Improve the text in the prompt shown when skipping login to sound more natural. +- Modified feedback addition logic to append new sections at the bottom of the page, ensuring + auto-archiving of sections functions correctly on the feedback page. +- Resolved issue where the app failed to clear cookies upon logout. + ## v5.0.1 Same as v5.0.0 except this fixes some R8 rules to ensure that the release diff --git a/app/build.gradle b/app/build.gradle index b00fcb153..d477b32ab 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -191,8 +191,8 @@ android { defaultConfig { //applicationId 'fr.free.nrw.commons' - versionCode 1039 - versionName '5.0.1' + versionCode 1040 + versionName '5.0.2' setProperty("archivesBaseName", "app-commons-v$versionName-" + getBranchName()) minSdkVersion 21 diff --git a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java index 93413213d..09e34100c 100644 --- a/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java +++ b/app/src/main/java/fr/free/nrw/commons/CommonsApplication.java @@ -294,6 +294,7 @@ public class CommonsApplication extends MultiDexApplication { } sessionManager.logout() + .andThen(Completable.fromAction(() -> cookieJar.clear())) .andThen(Completable.fromAction(() -> { Timber.d("All accounts have been removed"); clearImageCache(); diff --git a/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.kt b/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.kt index 0036f2f8e..cb153b7cb 100644 --- a/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.kt +++ b/app/src/main/java/fr/free/nrw/commons/actions/PageEditClient.kt @@ -78,6 +78,28 @@ class PageEditClient( } + /** + * Appends a new section to the wiki page + * @param pageTitle Title of the page to edit + * @param sectionTitle Title of the new section that needs to be created + * @param sectionText The page content that is to be added to the section + * @param summary Edit summary + * @return whether the edit was successful + */ + fun createNewSection(pageTitle: String, sectionTitle: String, sectionText: String, summary: String): Observable { + return try { + pageEditInterface.postNewSection(pageTitle, summary, sectionTitle, sectionText, csrfTokenClient.getTokenBlocking()) + .map { editResponse -> editResponse.edit()!!.editSucceeded() } + } catch (throwable: Throwable) { + if (throwable is InvalidLoginTokenException) { + throw throwable + } else { + Observable.just(false) + } + } + } + + /** * Set new labels to Wikibase server of commons * @param summary Edit summary diff --git a/app/src/main/java/fr/free/nrw/commons/actions/PageEditInterface.kt b/app/src/main/java/fr/free/nrw/commons/actions/PageEditInterface.kt index 56f0bf610..070aaaa64 100644 --- a/app/src/main/java/fr/free/nrw/commons/actions/PageEditInterface.kt +++ b/app/src/main/java/fr/free/nrw/commons/actions/PageEditInterface.kt @@ -74,6 +74,16 @@ interface PageEditInterface { @Field("token") token: String ): Observable + @FormUrlEncoded + @Headers("Cache-Control: no-cache") + @POST(MW_API_PREFIX + "action=edit§ion=new") + fun postNewSection( + @Field("title") title: String, + @Field("summary") summary: String, + @Field("sectiontitle") sectionTitle: String, + @Field("text") sectionText: String, + @Field("token") token: String + ): Observable @FormUrlEncoded @Headers("Cache-Control: no-cache") diff --git a/app/src/main/java/fr/free/nrw/commons/auth/SessionManager.java b/app/src/main/java/fr/free/nrw/commons/auth/SessionManager.java index f5395ceda..7c2f4a334 100644 --- a/app/src/main/java/fr/free/nrw/commons/auth/SessionManager.java +++ b/app/src/main/java/fr/free/nrw/commons/auth/SessionManager.java @@ -122,18 +122,18 @@ public class SessionManager { } /** - * 1. Clears existing accounts from account manager - * 2. Calls MediaWikiApi's logout function to clear cookies - * @return + * Returns a Completable that clears existing accounts from account manager */ public Completable logout() { - AccountManager accountManager = AccountManager.get(context); - Account[] allAccounts = accountManager.getAccountsByType(BuildConfig.ACCOUNT_TYPE); - return Completable.fromObservable(Observable.fromArray(allAccounts) - .map(a -> accountManager.removeAccount(a, null, null).getResult())) - .doOnComplete(() -> { - currentAccount = null; - }); + return Completable.fromObservable( + Observable.empty() + .doOnComplete( + () -> { + removeAccount(); + currentAccount = null; + } + ) + ); } /** diff --git a/app/src/main/java/fr/free/nrw/commons/auth/csrf/CsrfTokenClient.kt b/app/src/main/java/fr/free/nrw/commons/auth/csrf/CsrfTokenClient.kt index 9e3136237..88cc6b953 100644 --- a/app/src/main/java/fr/free/nrw/commons/auth/csrf/CsrfTokenClient.kt +++ b/app/src/main/java/fr/free/nrw/commons/auth/csrf/CsrfTokenClient.kt @@ -10,7 +10,6 @@ import fr.free.nrw.commons.auth.login.LoginResult import retrofit2.Call import retrofit2.Response import timber.log.Timber -import java.io.IOException import java.util.concurrent.Callable import java.util.concurrent.Executors.newSingleThreadExecutor diff --git a/app/src/main/java/fr/free/nrw/commons/feedback/FeedbackContentCreator.java b/app/src/main/java/fr/free/nrw/commons/feedback/FeedbackContentCreator.java index 5fe0cac4e..839858b3e 100644 --- a/app/src/main/java/fr/free/nrw/commons/feedback/FeedbackContentCreator.java +++ b/app/src/main/java/fr/free/nrw/commons/feedback/FeedbackContentCreator.java @@ -12,7 +12,8 @@ import java.util.Locale; * from feedback information */ public class FeedbackContentCreator { - private StringBuilder stringBuilder; + private StringBuilder sectionTextBuilder; + private StringBuilder sectionTitleBuilder; private Feedback feedback; private Context context; @@ -28,71 +29,80 @@ public class FeedbackContentCreator { public void init() { // Localization is not needed here, because this ends up on a page where developers read the feedback, so English is the most convenient. - stringBuilder = new StringBuilder(); - stringBuilder.append("== "); - stringBuilder.append("Feedback from "); - stringBuilder.append(AccountUtil.getUserName(context)); - stringBuilder.append(" for version "); - stringBuilder.append(feedback.getVersion()); - stringBuilder.append(" =="); - stringBuilder.append("\n"); - stringBuilder.append(feedback.getTitle()); - stringBuilder.append("\n"); - stringBuilder.append("\n"); + /* + * Construct the feedback section title + */ + sectionTitleBuilder = new StringBuilder(); + sectionTitleBuilder.append("Feedback from "); + sectionTitleBuilder.append(AccountUtil.getUserName(context)); + sectionTitleBuilder.append(" for version "); + sectionTitleBuilder.append(feedback.getVersion()); + + /* + * Construct the feedback section text + */ + sectionTextBuilder = new StringBuilder(); + sectionTextBuilder.append("\n"); + sectionTextBuilder.append(feedback.getTitle()); + sectionTextBuilder.append("\n"); + sectionTextBuilder.append("\n"); if (feedback.getApiLevel() != null) { - stringBuilder.append("* "); - stringBuilder.append(LangCodeUtils.getLocalizedResources(context, + sectionTextBuilder.append("* "); + sectionTextBuilder.append(LangCodeUtils.getLocalizedResources(context, Locale.ENGLISH).getString(R.string.api_level)); - stringBuilder.append(": "); - stringBuilder.append(feedback.getApiLevel()); - stringBuilder.append("\n"); + sectionTextBuilder.append(": "); + sectionTextBuilder.append(feedback.getApiLevel()); + sectionTextBuilder.append("\n"); } if (feedback.getAndroidVersion() != null) { - stringBuilder.append("* "); - stringBuilder.append(LangCodeUtils.getLocalizedResources(context, + sectionTextBuilder.append("* "); + sectionTextBuilder.append(LangCodeUtils.getLocalizedResources(context, Locale.ENGLISH).getString(R.string.android_version)); - stringBuilder.append(": "); - stringBuilder.append(feedback.getAndroidVersion()); - stringBuilder.append("\n"); + sectionTextBuilder.append(": "); + sectionTextBuilder.append(feedback.getAndroidVersion()); + sectionTextBuilder.append("\n"); } if (feedback.getDeviceManufacturer() != null) { - stringBuilder.append("* "); - stringBuilder.append(LangCodeUtils.getLocalizedResources(context, + sectionTextBuilder.append("* "); + sectionTextBuilder.append(LangCodeUtils.getLocalizedResources(context, Locale.ENGLISH).getString(R.string.device_manufacturer)); - stringBuilder.append(": "); - stringBuilder.append(feedback.getDeviceManufacturer()); - stringBuilder.append("\n"); + sectionTextBuilder.append(": "); + sectionTextBuilder.append(feedback.getDeviceManufacturer()); + sectionTextBuilder.append("\n"); } if (feedback.getDeviceModel() != null) { - stringBuilder.append("* "); - stringBuilder.append(LangCodeUtils.getLocalizedResources(context, + sectionTextBuilder.append("* "); + sectionTextBuilder.append(LangCodeUtils.getLocalizedResources(context, Locale.ENGLISH).getString(R.string.device_model)); - stringBuilder.append(": "); - stringBuilder.append(feedback.getDeviceModel()); - stringBuilder.append("\n"); + sectionTextBuilder.append(": "); + sectionTextBuilder.append(feedback.getDeviceModel()); + sectionTextBuilder.append("\n"); } if (feedback.getDevice() != null) { - stringBuilder.append("* "); - stringBuilder.append(LangCodeUtils.getLocalizedResources(context, + sectionTextBuilder.append("* "); + sectionTextBuilder.append(LangCodeUtils.getLocalizedResources(context, Locale.ENGLISH).getString(R.string.device_name)); - stringBuilder.append(": "); - stringBuilder.append(feedback.getDevice()); - stringBuilder.append("\n"); + sectionTextBuilder.append(": "); + sectionTextBuilder.append(feedback.getDevice()); + sectionTextBuilder.append("\n"); } if (feedback.getNetworkType() != null) { - stringBuilder.append("* "); - stringBuilder.append(LangCodeUtils.getLocalizedResources(context, + sectionTextBuilder.append("* "); + sectionTextBuilder.append(LangCodeUtils.getLocalizedResources(context, Locale.ENGLISH).getString(R.string.network_type)); - stringBuilder.append(": "); - stringBuilder.append(feedback.getNetworkType()); - stringBuilder.append("\n"); + sectionTextBuilder.append(": "); + sectionTextBuilder.append(feedback.getNetworkType()); + sectionTextBuilder.append("\n"); } - stringBuilder.append("~~~~"); - stringBuilder.append("\n"); + sectionTextBuilder.append("~~~~"); + sectionTextBuilder.append("\n"); } - @Override - public String toString() { - return stringBuilder.toString(); + public String getSectionText() { + return sectionTextBuilder.toString(); + } + + public String getSectionTitle() { + return sectionTitleBuilder.toString(); } } 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 451423e9e..f6ef824e7 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 @@ -2,6 +2,9 @@ package fr.free.nrw.commons.media; import static fr.free.nrw.commons.Utils.handleWebUrl; +import android.os.Handler; +import android.os.Looper; +import android.widget.ProgressBar; import android.content.ActivityNotFoundException; import android.content.Intent; import android.graphics.Bitmap; @@ -76,6 +79,11 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple private boolean isFromFeaturedRootFragment; private int position; + /** + * ProgressBar used to indicate the loading status of media items. + */ + private ProgressBar imageProgressBar; + private ArrayList removedItems=new ArrayList(); public void clearRemoved(){ @@ -89,7 +97,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple /** * Use this factory method to create a new instance of this fragment using the provided * parameters. - * + * * This method will create a new instance of MediaDetailPagerFragment and the arguments will be * saved to a bundle which will be later available in the {@link #onCreate(Bundle)} * @param editable @@ -108,7 +116,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple public MediaDetailPagerFragment() { // Required empty public constructor }; - + @Override public View onCreateView(LayoutInflater inflater, @@ -116,7 +124,8 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple Bundle savedInstanceState) { binding = FragmentMediaDetailPagerBinding.inflate(inflater, container, false); binding.mediaDetailsPager.addOnPageChangeListener(this); - + // Initialize the ProgressBar by finding it in the layout + imageProgressBar = binding.getRoot().findViewById(R.id.itemProgressBar); adapter = new MediaDetailAdapter(getChildFragmentManager()); // ActionBar is now supported in both activities - if this crashes something is quite wrong @@ -397,7 +406,7 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple } catch (Exception e) { Timber.e("Cant detect media transparency"); } - + // Initialize bookmark object bookmark = new Bookmark( m.getFilename(), @@ -497,19 +506,27 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple * @param position current item that to be shown */ private void setViewPagerCurrentItem(int position) { - final Boolean[] currentItemNotShown = {true}; - Runnable runnable = new Runnable() { + + final Handler handler = new Handler(Looper.getMainLooper()); + final Runnable runnable = new Runnable() { @Override public void run() { - while(currentItemNotShown[0]){ - if(adapter.getCount() > position){ - binding.mediaDetailsPager.setCurrentItem(position, false); - currentItemNotShown[0] = false; - } + // Show the ProgressBar while waiting for the item to load + imageProgressBar.setVisibility(View.VISIBLE); + // Check if the adapter has enough items loaded + if(adapter.getCount() > position){ + // Set the current item in the ViewPager + binding.mediaDetailsPager.setCurrentItem(position, false); + // Hide the ProgressBar once the item is loaded + imageProgressBar.setVisibility(View.GONE); + } else { + // If the item is not ready yet, post the Runnable again + handler.post(this); } } }; - new Thread(runnable).start(); + // Start the Runnable + handler.post(runnable); } /** diff --git a/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.java b/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.java index 760593281..0bd8333e3 100644 --- a/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/navtab/MoreBottomSheetFragment.java @@ -153,9 +153,14 @@ public class MoreBottomSheetFragment extends BottomSheetDialogFragment { void uploadFeedback(final Feedback feedback) { final FeedbackContentCreator feedbackContentCreator = new FeedbackContentCreator(getContext(), feedback); - Single single = - pageEditClient.prependEdit("Commons:Mobile_app/Feedback", feedbackContentCreator.toString(), "Summary") - .flatMapSingle(result -> Single.just(result)) + final Single single = + pageEditClient.createNewSection( + "Commons:Mobile_app/Feedback", + feedbackContentCreator.getSectionTitle(), + feedbackContentCreator.getSectionText(), + "New feedback on version " + feedback.getVersion() + " of the app" + ) + .flatMapSingle(Single::just) .firstOrError(); Single.defer((Callable>) () -> single) diff --git a/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java index 2cf284705..105df1837 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java @@ -333,6 +333,13 @@ public class UploadMediaDetailFragment extends UploadBaseFragment implements uploadMediaDetailAdapter.getItems().get(0).setDescriptionText( getString(R.string.similar_coordinate_description_auto_set)); updateMediaDetails(uploadMediaDetailAdapter.getItems()); + + // Replace the 'Add location' button with 'Edit location' button when user clicks + // yes in similar image dialog + // fixing: https://github.com/commons-app/apps-android-commons/issues/5669 + Drawable mapTick = getResources().getDrawable(R.drawable.ic_map_available_20dp); + binding.locationImageView.setImageDrawable(mapTick); + binding.locationTextView.setText(R.string.edit_location); } @Override diff --git a/app/src/main/java/fr/free/nrw/commons/wikidata/cookies/CommonsCookieJar.kt b/app/src/main/java/fr/free/nrw/commons/wikidata/cookies/CommonsCookieJar.kt index 34b38ab80..fbc88f55a 100644 --- a/app/src/main/java/fr/free/nrw/commons/wikidata/cookies/CommonsCookieJar.kt +++ b/app/src/main/java/fr/free/nrw/commons/wikidata/cookies/CommonsCookieJar.kt @@ -95,4 +95,9 @@ class CommonsCookieJar(private val cookieStorage: CommonsCookieStorage) : Cookie private fun Cookie.domainSpec(url: HttpUrl): String = domain.ifEmpty { url.toUri().getAuthority() } + + fun clear() { + cookieStorage.clear() + } + } diff --git a/app/src/main/res/layout/fragment_media_detail_pager.xml b/app/src/main/res/layout/fragment_media_detail_pager.xml index 19d5d002d..e92c739de 100644 --- a/app/src/main/res/layout/fragment_media_detail_pager.xml +++ b/app/src/main/res/layout/fragment_media_detail_pager.xml @@ -1,14 +1,20 @@ - + android:orientation="vertical" + android:layout_width="match_parent" + android:layout_height="match_parent" + xmlns:app="http://schemas.android.com/apk/res-auto"> + - \ No newline at end of file + + diff --git a/app/src/main/res/values-af/strings.xml b/app/src/main/res/values-af/strings.xml index e4a2e392e..1da8b3101 100644 --- a/app/src/main/res/values-af/strings.xml +++ b/app/src/main/res/values-af/strings.xml @@ -1,5 +1,6 @@ @@ -11,6 +12,22 @@ Kod Sumber Github Commons Logo Commons Tapak Sesawang Commons + Keluar dari pemilih lokasi + Hantar + Tambah penerangan lain + Tambah sumbangan baru + Tambah sumbangan dari kamera + Tambah sumbangan dari Foto + Tambah sumbangan dari galeri sumbangan sebelumnya + Kapsyen + Keterangan Bahasa + Kapsyen + Keterangan + Imej + Semua + Togol Atas + Paparan Carian + Gambar untuk Hari ini %d fail sedang dimuat naik Belum ada muatnaik @@ -26,31 +43,41 @@ Gambar ini akan dilesenkan di bawah %1$s Jelajah Penampilan + Umum Maklum balas Privasi Commons Tetapan Muat naik ke Commons + Muat naik sedang dijalankan Nama pengguna Kata laluan Log masuk ke akaun Commons Beta anda Log masuk Lupa Kata Laluan? + Daftar masuk Sedang log masuk Sila tunggu… + Mengemas kini kapsyen dan keterangan Sila tunggu… - Berjaya log masuk! - Gagal log masuk! + Log masuk berjaya! + Log masuk gagal! Fail tidak dijumpai. Sila cuba fail lain. - Pendaftaran gagal, sila log masuk lagi + Had percubaan maksimum dicapai! Sila batalkan muat naik dan cuba semula + Matikan pengoptimuman bateri? + Muat naik lebih dari 3 imej berfungsi dengan lebih berkesan jika mod pengoptimuman bateri dimatikan. Sila matikan mod pengoptimuman bateri bagi aplikasi Commons dari tetapan untuk pengalaman muat naik yang lebih lancar.\n\nLangkah-langkah mungkin bagi mematikan pengoptimuman bateri:\n\nLangkah 1: Sentuh pada butang \'Settings\' di bawah.\n\nLangkah 2: Tukar dari \'Not optimized\' ke \'All apps\'\n\nLangkah 3: Cari \"Commons\" atau \"fr.free.nrw.commons\".\n\nLangkah 4: Sentuh padanya dan pilih \'Don\'t optimize\'.\n\nLangkah 5: Tekan \'Done\' + Pengesahan gagal. Sila log masuk semula. Pemuatnaikan telah bermula! + Muat naik menunggu (mod sambungan terhad diaktifkan) %1$s telah dimuat naik! Ketik untuk melihat muatan naik anda - Mula memuat naik %1$s + Memuat naik fail: %s %1$s sedang dimuat naik %1$s akan siap dimuat naik - %1$s gagal dimuat naik + Gagal untuk muat naik %1$s + Muat naik %1$s tertunda Ketik untuk lihat + Sentuh untuk lihat Muat Naik Terbaru Saya Dibaris gilir Gagal @@ -62,31 +89,37 @@ Muatan naik saya Kongsi Lihat laman fail - Tajuk + Kapsyen (wajib) + Sila berikan kapsyen untuk fail ini Keterangan Kapsyen - Tidak boleh log masuk - kegagalan rangkaian - Terlalu banyak cubaan yang tidak berjaya. Sila cuba lagi dalam beberapa minit + Tidak boleh log masuk - kegagalan rangkaian + Terlalu banyak cubaan yang tidak berjaya. Sila cuba lagi dalam beberapa minit. Maaf, pengguna ini telah disekat di Commons - Log masuk gagal + Anda perlu berikan kod penyahihan dua-faktor anda. + Log masuk gagal Muat naik Namakan set ini Pengubahsuaian Muat naik Cari dalam kategori Simpan + Segarkan Senarai + (Tiada muat naik lagi) Tiada kategori yang sepadan dengan %1$s dijumpai Tambahkan kategori supaya gambar-gambar anda lebih senang ditemui di Wikimedia Commons.\n\nMula menaip untuk menambahkan kategori.\nKetik mesej ini (atau tekan butang undur) untuk melangkau langkah ini. Kategori Tetapan Kategori Perihal - Perisian Sumber Terbuka yang dikeluarkan dengan <a href=\"https://github.com/commons-app/apps-android-commons/blob/master/COPYING\">Lesen Apache v2</a> - Sumber di <a href=\"https://github.com/commons-app/apps-android-commons\">GitHub</a>. Pepijat di <a href=\" https://github.com/commons-app/apps-android-commons/issues\">Github</a>. - Wikimedia:Commons-android-strings-about privacy policy/ms + Aplikasi Wikimedia Commons ialah aplikasi sumber terbuka yang dicipta dan diselenggara oleh penerima geran dan sukarelawan komuniti Wikimedia. Yayasan Wikimedia tidak terlibat dalam penciptaan, pembangunan atau penyelenggaraan aplikasi ini. + Cipta <a href=\"%1$s\">isu GitHub</a> baru bagi melaporkan pepijat dan cadangan. + Dasar privasi + Kredit Perihal Hantar Maklum Balas (secara e-mel) + Tiada klien emel dipasang Kategori yang baru digunakan Menunggu penyegerakan pertama… Anda belum memuat naik sebarang gambar. @@ -211,6 +244,7 @@ Tamat pada: Imej berikutnya Ya, kenapa tidak + Pengarang Akses lokasi media ditolak Kami mungkin tidak dapat memperolehi data tempat dari gambar yang anda muat naik secara automatik. Sila tambah tempat sewajarnya pada setiap gambar sebelum menyerahnya Kemas kini kategori diff --git a/app/src/main/res/values-ne/strings.xml b/app/src/main/res/values-ne/strings.xml index 1d2a28606..1acf3d670 100644 --- a/app/src/main/res/values-ne/strings.xml +++ b/app/src/main/res/values-ne/strings.xml @@ -12,6 +12,7 @@ --> कमन्सकाे फेसबुक पृष्ठ + कमन्सकाे Github स्रोत कोड कमन्सकाे लाेगाे कमन्सकाे वेबसाइट बुझाउनुहोस् @@ -37,6 +38,7 @@ खाता खाेल्नुहाेस् प्रवेश गर्दै कृपया प्रतीक्षा गर्नुहोस् … + कृपया प्रतीक्षा गर्नुहोस् … प्रवेश सफल! प्रवेश सफल हुन सकेन! चित्र भेटिएन। कृपया अर्को चित्र प्रयास गर्नुहोस्। @@ -46,9 +48,10 @@ तपाईको उर्ध्वभरण हेर्नको लागि ट्याप गर्नुहोस् %1$s उर्ध्वभरण सुरू गर्दैै %1$s उर्ध्वभरण गरिँदै - %1$s उर्ध्वभरण सकाउँदै + %1$s उर्ध्वभरण सकाउँदै %1$s उर्ध्वभरण असफल भयो हेर्नको लागि ट्याप गर्नुहोस् + हेर्नको लागि ट्याप गर्नुहोस् मेरा हालैका उर्ध्वभरणहरू लाममा राखियो असफल भयो @@ -205,6 +208,7 @@ प्रश्नोत्तरी प्रश्न नतिजा + लग इनको म्याद सकियो। कृपया पुन: लग इन गर्नुहाेस्। निरन्तरता दिनुहोस् गलत उत्तर अनुप्रयाेग साझेदारी गर्नुहाेस् @@ -232,6 +236,7 @@ कुनैपनि श्रेणीहरू छानिएका छैनन् यस क्षेत्रमा खोज्नुहोस् अनुमति अनुरोध + अनुमति दिनुहोस् सम्पन्न कृपया प्रतिक्षा गर्नुहोस्… लेखक @@ -248,6 +253,8 @@ एउटा सेल्फी जुन कुनै पनि लेखहरूमा प्रयोग गरिएको छैन् पुरै धमिलो लोगो + सफल + सफल तपाईले हालसम्म कुनैपनि सम्पादन गर्नु भएकाे छैन खाता सृजना गरियो! नजिकैको स्थान भेटियो @@ -255,10 +262,54 @@ मेरो अभिरुचिहरू पुस्तक चिनाेमा थपियाे भित्तेपत्रकाे रूपमा चयन गर्नुहोस् + वालपेपर सेट गर्दै। कृपया प्रतीक्षा गर्नुहोस् … पुनर्निर्धारित गाढा हल्का + पुस्तक चिनोहरू + उपलब्धिहरू + उर्ध्वभरण गर्ने + निकटस्थ + विवरण + वस्तुहरू + सम्पन्न भयो + + थप जान्नुहोस् + विकी लभ्स मोनुमेन्टस् + अनुमति आवश्यक + प्रयोगकर्ता पृष्ठ हेर्नुहोस् + सम्पादन श्रेणीहरू + उन्नत विकल्प + तपाईँले निकटता क्वेरी अनुकूलन गर्न सक्नुहुन्छ। त्रुटी भएमा पूर्ववत् गर्नुभएर लागू गर्नुहोस्। + लागू गर्नुहोस् + पूर्वस्थितिमा फर्काउनुहोस् + + कुनै पनि स्थान फेला परेन । + तस्विर खिचिएको स्थान थप्ने हो?\nस्थानको डेटाले विकी सम्पादकहरूलाई तस्विर भेटाउन मद्दत गर्छ र यसलाई धेरै उपयोगी गराउँछ।\nधन्यवाद! + स्थान थप्नुहोस् + विवरणहरू + कृपया आफैँले खिच्नुभएको तस्विर मात्र अपलोड गर्नुहोस्। प्रतिलिपि अधिकार हनन् गर्ने अपलोडकर्तालाई रोकगाइने छ। यो बिटाएपमा पनि लागू हुन्छ। एप परीक्षण गर्नुभएकोमा धन्यवाद! + एन्ड्रोइड संस्करण + उपकरण निर्माता + उपकरण मोडल + उपकरणको नाम + सञ्जालको प्रकार + प्रतिक्रिया दिनुभएकोमा धन्यवाद + प्रतिक्रिया पठाउँदा त्रुटि भयो + तपाईँको प्रतिक्रिया के छ? + छानिएको चित्र + रिपोेर्ट गर्नुहोस् यस प्रयोगकर्तालाई उजुरी गर्नुहोस् - यस प्रतिवेदनलाई उजुरी गर्नुहोस् + यस सामग्रीलाई उजुरी गर्नुहोस् यस प्रयोगकर्तालाई रोक लगाउन अनुरोध गर्नुहोस् + तस्विर सम्पादन गर्नुहोस् + स्थान सम्पादन गर्नुहोस् + स्थान अपडेट गरियो! + यो स्थान हटाउनुहोस् + स्थान चेतावनी हटाउनुहोस् + स्थान हटाइयो! + सर्जकलाई धन्यवाद दिनुहोस् + सर्जकलाई धन्यवाद पठाउँदा त्रुटि भयो। + तपाईँको लग इनको म्याद सकियो। कृपया पुन: लग इन गर्नुहाेस्। + फाइल सफलतापूर्वक सङ्ग्रह गरियो। diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index a8fce35c8..57fa519b2 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -292,7 +292,7 @@ Overslaan Aanmelden Weet u zeker dat u het aanmelden wilt overslaan? - U moet zich dan later wel aanmelden om afbeeldingen te kunnen uploaden. + In de toekomst moet u zich aanmelden om afbeeldingen te kunnen uploaden. Meld u aan om deze functie te gebruiken Kopieer de wikitekst naar het klembord De wikitekst is gekopieerd naar het klembord @@ -792,4 +792,5 @@ Houd er rekening mee dat alle afbeeldingen in een multi-upload dezelfde categorieën krijgen en geacht worden hetzelfde weer te geven. Als deze gegevens per afbeelding moeten verschillen, voer dan meerdere afzonderlijke uploads uit. Opmerking over multi-uploads + Uw feedback wordt op de volgende wikipagina geplaatst: <a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\">Commons:Mobile app/Feedback</a> diff --git a/app/src/main/res/values-pa/strings.xml b/app/src/main/res/values-pa/strings.xml index 4b7cdc4f4..ab3d3a28b 100644 --- a/app/src/main/res/values-pa/strings.xml +++ b/app/src/main/res/values-pa/strings.xml @@ -130,7 +130,7 @@ ਲੱਦ ਰਿਹਾ ਹੈ... ਕੋਈ ਵੀ ਨਹੀਂ ਚੁਣਿਆ ਕੋਈ ਵੇਰਵਾ ਨਹੀਂ - ਕੋਈ ਚਰਚਾ ਨਹੀਂ + ਕੋਈ ਗੱਲਬਾਤ ਨਹੀਂ ਅਣਜਾਣ ਲਸੰਸ ਤਾਜ਼ਾ ਕਰੋ ਆਗਿਆ ਚਾਹੀਦੀ ਹੈ: ਬਾਹਰੀ ਸਟੋਰੇਜ ਬਾਰੇ। ਇਸ ਤੋਂ ਬਿਨਾਂ ਐਪ ਕਾਰਜ ਨਹੀਂ ਕਰ ਸਕੇਗੀ। @@ -140,7 +140,7 @@ ਨਹੀਂ ਸਿਰਲੇਖ ਵੇਰਵਾ - ਚਰਚਾ + ਗੱਲਬਾਤ ਲਿਖਾਰੀ ਅਪਲੋਡ ਦੀ ਮਿਤੀ ਲਸੰਸ @@ -153,7 +153,7 @@ ਰੱਦ ਕਰੋ ਖੋਲ੍ਹੋ ਬੰਦ ਕਰੋ - ਮੁੱਢਲਾ ਸਫ਼ਾ + ਘਰ ਚੜ੍ਹਾਉ ਨੇੜੇ-ਤੇੜੇ ਬਾਰੇ diff --git a/app/src/main/res/values-pms/strings.xml b/app/src/main/res/values-pms/strings.xml index 28a4a4b26..96e21e87c 100644 --- a/app/src/main/res/values-pms/strings.xml +++ b/app/src/main/res/values-pms/strings.xml @@ -269,7 +269,7 @@ Sauté Intré ant ël sistema Veul-lo për da bon sauté la procedura d\'intrada ant ël sistema? - A l\'avnì a dovrà rintré ant ël sistema për carié \'d fòto. + A l\'avnì a dovrà rintré ant ël sistema për carié \'d fòto. Për piasì, ch\'a rintra ant ël sistema për podèj dovré costa fonsionalità Copié ël test wiki ant ël pògia-feuj Ël test wiki a l\'é stàit copià ant ël pògia-feuj @@ -767,4 +767,5 @@ Ch\'a ten-a da ment che tute le plance ant un cariament mùltipl a pijo j\'istesse categorìe e descrission. Si le plance a partagio nen descrission e categorìe, për piasì ch\'a fasa tanti cariament separà. Nòta an sij cariament mùltipl + Ij sò sugeriment a saran giontà a coste pàgine wiki: <a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\">Commons:Mobile app/Feedback</a> diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index b753806d5..a36df69f7 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -325,7 +325,7 @@ Пропустить Войти Вы действительно хотите пропустить авторизацию? - Вам следует залогиниться чтобы загружать изображения. + Вам придётся войти в систему, чтобы загружать фотографии в будущем. Войдите, чтобы использовать эту функцию Копирование викикода в буфер обмена Викикод скопирован в буфер обмена @@ -831,4 +831,5 @@ Помните, что все изображения при мультизагрузке получают одинаковые категории и описания. Если изображения не имеют одинаковых описаний и категорий, выполните несколько отдельных загрузок. Замечание о мультизагрузках + Ваш отзыв будет опубликован на следующей вики-странице: <a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\">Commons:Mobile app/Feedback</a> diff --git a/app/src/main/res/values-si/strings.xml b/app/src/main/res/values-si/strings.xml index f69aa3f0e..92fa25f3e 100644 --- a/app/src/main/res/values-si/strings.xml +++ b/app/src/main/res/values-si/strings.xml @@ -1,9 +1,9 @@ කොමන්ස් ෆේස්බුක් පිටුව diff --git a/app/src/main/res/values-tok/error.xml b/app/src/main/res/values-tok/error.xml new file mode 100644 index 000000000..31290bfea --- /dev/null +++ b/app/src/main/res/values-tok/error.xml @@ -0,0 +1,10 @@ + + + + ilo Commons li pakala + ijo li pakala a! + o pana e sona ni lon lipu Email: sina pali e seme? pana la mi ken pona e pakala. + sina pona a! + diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 9e893d7d9..355b8b0be 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -10,6 +10,7 @@ * Hedda * Incelemeelemani * JackUKElliott +* Jelican9 * Joseph * McAang * McDutchie @@ -101,13 +102,13 @@ Lütfen bekleyin… Altyazılar ve açıklamalar güncelleniyor Lütfen bekleyin… - Oturum açma başarılı! - Oturum açma başarısız oldu! + Oturum açma başarılı! + Oturum açma başarısız oldu! Dosya bulunamadı. Lütfen başka bir dosya deneyin. Tekrar deneme sınırına ulaşıldı! Lütfen yüklemeyi iptal edin ve tekrar deneyin. Pil optimizasyonu kapatılsın mı ? Batarya optimizasyonu kapatıldığında 3\'den fazla görüntü yüklemek daha güvenilir bir yoldur. Lütfen sorunsuz bir yükleme deneyimi için Commons uygulamasının ayarlar kısmından batarya optimizasyonunu kapatın.\n\nBatarya Optimizasyonunu kapatmak için yapılabilecek adımlar:\n\nAdım 1: Aşağı kısımdan\"Ayarlar\" butonuna basın\n\nAdım 2: \"Optimizasyon yapılmamış\" seçeneğini \"Tüm uygulamalar\" olarak değiştirin\"\n\nAdım 3: \"Commons\" veya \"fr.free.nrw.commons\" olacak şekilde arama yapın\n\nAdım 4: Tıklayın ve \"Optimize Etme\" seçeneğini seçin.\n\nAdım 5: \"Yapıldı\" seçeneğine basın. - Kimlik doğrulama başarısız oldu, lütfen tekrar giriş yapın + Kimlik doğrulama başarısız oldu. Lütfen tekrar giriş yapın. Yükleme başladı! Yükleme kuyruğunda (sınırlı bağlantı modu etkin) %1$s yüklendi! @@ -134,11 +135,11 @@ Lütfen bu dosya için bir başlık girin Açıklama Altyazı - Oturum açılamıyor - ağ hatası + Oturum açılamıyor - ağ hatası Çok sayıda başarısız girişimde bulundunuz. Birkaç dakika sonra tekrar deneyin. Üzgünüz, bu kullanıcı Commons\'ta engellendi İki faktörlü kimlik doğrulama kodunu sağlamalısınız. - Oturum açma başarısız + Oturum açma başarısız Yükle Bu ayarı adlandırın Değişiklikler @@ -262,6 +263,7 @@ Hakkında Ayarlar Geri bildirim + GitHub aracılığıyla geri bildirim Oturumu kapat Eğitim Bildirimler @@ -295,14 +297,15 @@ Web sayfasının detaylarını gör Atla Oturum aç - Gerçekten oturum açmayı atlamak istiyor musunuz? - İleride resim yüklemek için giriş yapmanız gerekir. + Gerçekten oturum açmayı atlamak istiyor musunuz? + İleride resim yüklemek için giriş yapmanız gerekecek. Bu özelliği kullanmak için lütfen giriş yapın Vikimetnini panoya kopyala Vikimetin panoya kopyalandı Yakınımdakiler düzgün çalışmayabilir, Konum kullanılamıyor. Konum erişimi reddedildi. Bu özelliği kullanmak için lütfen konumunuzu manuel olarak ayarlayın. Yakındaki yerler listesini görüntülemek için izin vermeniz gerekiyor + Yakındaki resimlerin listesini görüntülemek için izin gerekli Talimatlar Vikiveri Vikipedi @@ -362,7 +365,7 @@ Commons\'ta teknoloji veya kültür resimleri oldukça hoş karşılanır. Doğru cevap sayınız: %1$s. Tebrikler! Soruyu cevaplamak için iki seçenekten birini seçin - Giriş oturumunuzun süresi doldu, lütfen tekrar giriş yapın. + Giriş oturumunuzun süresi doldu. Lütfen tekrar giriş yapın. Sınavınızı arkadaşlarınızla paylaşın! Devam Doğru Cevap @@ -370,7 +373,8 @@ Bu ekran görüntüsü yüklemeye uygun mu? Uygulamayı Paylaş Döndür - Yakındaki yerler getirilirken hata oluştu. + Yakındaki yerler yüklenemedi + Bu bölgede resim yok Yakınlarda yer bulunamadı Yakındaki anıtlar getirilirken hata oluştu. Son arama yok @@ -445,7 +449,7 @@ Bunu bir daha sorma Konum izni isteyin Yakındaki bildirim kartı görüntüleme özelliği için gerektiğinde konum izni isteyin. - Bir şeyler ters gitti, başarılarınızı getiremedik + Bir şeyler ters gitti, başarıları getiremedik Başarı hesaplama sistemimizin üstesinden gelemeyeceği pek çok katkı yaptınız. Bu nihai başarıdır. Bitiş: Kampanyaları göster @@ -461,7 +465,7 @@ Yeni Android fotoğraf seçici, konum bilgilerini kaybetme riskini taşımaktadır. Kullanıyor gibi görünüyorsa etkinleştirin. Bunu kapatmak, yeni Android fotoğraf seçiciyi etkinleştirebilir. Konum bilgisini kaybetme riski vardır.\n\nDaha fazla bilgi için \'Daha fazlasını oku\'ya dokunun. Artık çalışmaları görmeyeceksiniz. Ancak isterseniz bu bildirimi Ayarlar\'dan yeniden etkinleştirebilirsiniz. - Bu işlev ağ bağlantısı gerektirir, lütfen bağlantı ayarlarınızı kontrol edin. + Bu işlev ağ bağlantısı gerektirir. Lütfen bağlantı ayarlarınızı kontrol edin. Görüntü işlenirken hata oluştu. Lütfen tekrar deneyin! Düzenleme için anahtar alınıyor Kategori kontrolü için şablon ekleme @@ -573,7 +577,7 @@ Koordinatlar eklenemedi. Açıklamalar eklenemedi. Başlık eklenemedi. - Koordinatlar alınamadı. + Görselin koordinatları güncellenmedi Açıklamalar alınamadı. Açıklamaları ve başlıkları düzenle Resmi şununla paylaş @@ -588,12 +592,13 @@ Fotoğrafa İhtiyaç Var Yer türü: Köprü, müze, otel vb. - Giriş ile ilgili bir sorun oluştu, şifrenizi sıfırlamanız gerekiyor !! + Giriş ile ilgili bir sorun oluştu. Şifrenizi sıfırlamanız gerekiyor! MEDYA ALT SINIFLAR ÜST SINIFLAR Yakındaki Yer Bulundu - Bu bir %1$s fotoğrafı mı? + Bunlar %1$s resimleri mi? + Bu bir %1$s resmi mi? Yer imleri Ayarlar Yer işaretlerinden kaldırıldı @@ -607,8 +612,10 @@ Konum ayarları açılamadı. Lütfen konumu manuel olarak açın En iyi sonuçlar için Yüksek Hassasiyet modunu seçin. Konum açılsın mı? + Uygulamanın mevcut konumunuzu göstermesi için lütfen konum hizmetlerini açın Yakınımdakilerin düzgün çalışması için konumun açık olması gerekiyor - Konumu otomatik olarak ayarlamak için mevcut konumunuza erişim izni vermeniz gerekir. + Keşfet haritasının yakındaki resimleri görüntülemek için konum iznine ihtiyacı var + Konumu otomatik olarak ayarlamak için konum erişim izni vermeniz gerekir. Bu iki fotoğrafı aynı yerde mi çektiniz? Sağdaki resmin enlem/boylamını kullanmak ister misiniz? Daha Fazla Yükle Yer bulunamadı, arama kriterlerinizi değiştirmeyi deneyin. @@ -722,6 +729,8 @@ Konum ekle Lütfen herkese açık olarak paylaşmaktan çekindiğiniz tüm bilgileri bu e-postadan kaldırın. Ayrıca gönderi paylaştığınız e-posta adresinizin ve ilgili ad ve profil resminizin herkese açık olarak görüneceğini lütfen unutmayın. Ayrıntılar + Başarılar yalnızca prod sürümünde mevcuttur. Lütfen geliştirici belgelerini denetleyin. + Liderlik tablosu yalnızca prod sürümünde mevcuttur. Lütfen geliştirici belgelerini denetleyin. Lütfen sadece kendi çektiğiniz fotoğrafları yükleyin. Telif hakkıyla korunan resimleri yükleyenler engellenecektir. Bu beta için de geçerlidir. Uygulamayı test ettiğiniz için teşekkür ederiz! Lütfen herkese açık olarak paylaşmaktan çekindiğiniz bilgilerin seçimini kaldırın. API seviyesi @@ -760,8 +769,32 @@ Depolama İzni Reddedildi Bu öge paylaşılamıyor İşlevsellik için izinler gereklidir + Yararlı bir açıklamanın nasıl yazılacağını öğrenin + Nasıl faydalı bir alt yazı yazılacağını öğrenin + Başarılarınızı görün + Görseli düzenle + Konumu Düzenle + Konum güncellendi! + Konumu Kaldır + Konum Uyarısını Kaldır + Konum, görselleri daha kullanışlı ve bulunabilir hale getirir. Bu resimden konumu gerçekten kaldırmak istiyor musunuz? + Konum kaldırıldı! + Yazara teşekkür et + Yazara teşekkür gönderme hatası. + Oturum açma süreniz doldu. Lütfen tekrar giriş yapın. + GPX dosyalarını açacak uygulama yok + Dosya Başarıyla Kaydedildi + GPX dosyasını açmak istiyor musunuz? + KML dosyasını açmak istiyor musunuz? + KML dosyası kaydedilemedi. + GPX dosyası kaydedilemedi. + KML Dosyasını Kaydetme + GPX Dosyasını Kaydetme %d resim seçildi %d resim seçildi + Lütfen çoklu yüklemedeki tüm görsellerin aynı kategorilere ve tasvirlere sahip olduğunu unutmayın. Görseller tasvirleri ve kategorileri paylaşmıyorsa, lütfen birkaç ayrı yükleme gerçekleştirin. + Çoklu yüklemelerle ilgili not + Geri bildiriminiz aşağıdaki wiki sayfasına gönderilir: <a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\">Commons:Mobile app/Feedback</a> diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index e083b2f4b..25ed6ffc9 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -292,7 +292,7 @@ 略過 登入 您確定要略過登入嗎? - 之後您需要登入才能上傳圖片。 + 您之後需要登入才能上傳圖片。 請登入來使用此功能 複製 wikitext 到剪貼簿 Wikitext 已複製到剪貼簿 @@ -792,4 +792,5 @@ 請記住,多重上傳中的所有圖片都會取得相同的分類和描述。如果圖片不要共享描述和分類,請執行多次單筆上傳。 關於多次上傳的註釋 + 您的回饋已發布到以下 wiki 頁面:<a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\">Commons:Mobile app/Feedback</a> diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml index b2b242929..a4ed17c02 100644 --- a/app/src/main/res/values-zh/strings.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1,6 +1,7 @@ 共享资源Facebook页面 diff --git a/app/src/test/kotlin/fr/free/nrw/commons/feedback/FeedbackContentCreatorUnitTests.kt b/app/src/test/kotlin/fr/free/nrw/commons/feedback/FeedbackContentCreatorUnitTests.kt index a2fea95e1..a238d8f7a 100644 --- a/app/src/test/kotlin/fr/free/nrw/commons/feedback/FeedbackContentCreatorUnitTests.kt +++ b/app/src/test/kotlin/fr/free/nrw/commons/feedback/FeedbackContentCreatorUnitTests.kt @@ -34,7 +34,8 @@ class FeedbackContentCreatorUnitTests { fun testToString() { feedback = Feedback("123", "apiLevel", "title", "androidVersion", "deviceModel", "mfg", "deviceName", "wifi") creator = FeedbackContentCreator(context, feedback) - Assert.assertNotNull(creator.toString()) + Assert.assertNotNull(creator.getSectionText()) + Assert.assertNotNull(creator.getSectionTitle()) } } \ No newline at end of file diff --git a/app/src/test/kotlin/fr/free/nrw/commons/navtab/MoreBottomSheetFragmentUnitTests.kt b/app/src/test/kotlin/fr/free/nrw/commons/navtab/MoreBottomSheetFragmentUnitTests.kt index f9606b8d9..a5faed37e 100644 --- a/app/src/test/kotlin/fr/free/nrw/commons/navtab/MoreBottomSheetFragmentUnitTests.kt +++ b/app/src/test/kotlin/fr/free/nrw/commons/navtab/MoreBottomSheetFragmentUnitTests.kt @@ -119,7 +119,7 @@ class MoreBottomSheetFragmentUnitTests { val feedback = mock(Feedback::class.java) val observable: Observable = Observable.just(false) val observable2: Observable = Observable.just(true) - doReturn(observable, observable2).`when`(pageEditClient).prependEdit(anyString(), anyString(), anyString()) + doReturn(observable, observable2).`when`(pageEditClient).createNewSection(anyString(), anyString(), anyString(), anyString()) fragment.uploadFeedback(feedback) }