Compare commits

..

7 commits

Author SHA1 Message Date
Amir E. Aharoni
0c244f369c
Replace android.R.string.* with R.string (#6499)
Some checks are pending
Android CI / Run tests and generate APK (push) Waiting to run
All these messages are not really necessary because
the app has its own localizations, and android.R.string
sometimes doesn't display the localized string.

Resolves #6470.
2025-10-13 21:54:32 +09:00
translatewiki.net
b6014b017c
Localisation updates from https://translatewiki.net. 2025-10-13 14:03:10 +02:00
Amir E. Aharoni
91ea4a6e7b
Rephrase images_featured_explanation (#6484)
Make the text of the panel consistent with its title.
The title is "Featured images", so the text should
use the same term.

Also move this resource next to the title, to make it easier
for the translators.
2025-10-13 18:43:59 +09:00
Amir E. Aharoni
1e51c4c5d0
Remove the arrow next to "Add location" (#6491)
This resolves #6489 using the "remove arrow" method.
2025-10-13 18:13:22 +09:00
Amir E. Aharoni
fbd28a0564
Change capitalization of "Add Location" (#6493)
This makes it consistent with "Edit Location" and
"Edit Image", which are used in the same screen.
2025-10-13 18:09:43 +09:00
Amir E. Aharoni
d0965206cd
Cleanup whitespace in the custom_selector_info_text2 string (#6496)
In the current state, it appears confusingly on translatewiki,
with a space in the beginning of a line.

This patch changes it to just two linebreaks.
2025-10-13 18:05:26 +09:00
Amir E. Aharoni
bb330c1771
Change "actioned" to "handled" in translatable strings (#6498)
"actioned" is not so standard in English as a verb.

"handled" sounds more appropriate.
2025-10-13 17:57:27 +09:00
19 changed files with 32 additions and 41 deletions

View file

@ -180,8 +180,8 @@ class ContributionController @Inject constructor(@param:Named("default_preferenc
showAlertDialog( showAlertDialog(
activity, activity.getString(R.string.location_permission_title), activity, activity.getString(R.string.location_permission_title),
activity.getString(R.string.in_app_camera_location_permission_rationale), activity.getString(R.string.in_app_camera_location_permission_rationale),
activity.getString(android.R.string.ok), activity.getString(R.string.ok),
activity.getString(android.R.string.cancel), activity.getString(R.string.cancel),
{ {
createDialogsAndHandleLocationPermissions( createDialogsAndHandleLocationPermissions(
activity, activity,

View file

@ -150,7 +150,7 @@ class DescriptionEditActivity :
this, this,
getString(titleStringID), getString(titleStringID),
getString(messageStringId), getString(messageStringId),
getString(android.R.string.ok), getString(R.string.ok),
null null
) )
} }

View file

@ -140,8 +140,8 @@ class ExploreMapFragment : CommonsDaggerSupportFragment(), ExploreMapContract.Vi
requireActivity(), requireActivity(),
requireActivity().getString(R.string.location_permission_title), requireActivity().getString(R.string.location_permission_title),
requireActivity().getString(R.string.location_permission_rationale_explore), requireActivity().getString(R.string.location_permission_rationale_explore),
requireActivity().getString(android.R.string.ok), requireActivity().getString(R.string.ok),
requireActivity().getString(android.R.string.cancel), requireActivity().getString(R.string.cancel),
{ askForLocationPermission() }, { askForLocationPermission() },
null, null,
null null

View file

@ -67,10 +67,10 @@ class RecentSearchesFragment : CommonsDaggerSupportFragment() {
private fun showDeleteRecentAlertDialog(context: Context) { private fun showDeleteRecentAlertDialog(context: Context) {
AlertDialog.Builder(context) AlertDialog.Builder(context)
.setMessage(getString(R.string.delete_recent_searches_dialog)) .setMessage(getString(R.string.delete_recent_searches_dialog))
.setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _: Int -> .setPositiveButton(R.string.yes) { dialog: DialogInterface, _: Int ->
setDeleteRecentPositiveButton(context, dialog) setDeleteRecentPositiveButton(context, dialog)
} }
.setNegativeButton(android.R.string.no, null) .setNegativeButton(R.string.no, null)
.setCancelable(false) .setCancelable(false)
.create() .create()
.show() .show()
@ -102,7 +102,7 @@ class RecentSearchesFragment : CommonsDaggerSupportFragment() {
setDeletePositiveButton(context, dialog, position) setDeletePositiveButton(context, dialog, position)
} }
) )
.setNegativeButton(android.R.string.cancel, null) .setNegativeButton(R.string.cancel, null)
.setCancelable(false) .setCancelable(false)
.create() .create()
.show() .show()

View file

@ -64,8 +64,8 @@ class LocationPermissionsHelper(
activity, activity,
activity.getString(dialogTitleResource), activity.getString(dialogTitleResource),
activity.getString(dialogTextResource), activity.getString(dialogTextResource),
activity.getString(android.R.string.ok), activity.getString(R.string.ok),
activity.getString(android.R.string.cancel), activity.getString(R.string.cancel),
{ {
ActivityCompat.requestPermissions( ActivityCompat.requestPermissions(
activity, activity,

View file

@ -151,7 +151,7 @@ class QuizChecker @Inject constructor(
activity.getString(R.string.quiz), activity.getString(R.string.quiz),
activity.getString(R.string.quiz_alert_message, revertPercentageForMessage), activity.getString(R.string.quiz_alert_message, revertPercentageForMessage),
activity.getString(R.string.about_translate_proceed), activity.getString(R.string.about_translate_proceed),
activity.getString(android.R.string.cancel), activity.getString(R.string.cancel),
{ startQuizActivity(activity) }, { startQuizActivity(activity) },
null null
) )

View file

@ -193,7 +193,7 @@ class QuizResultActivity : AppCompatActivity() {
alertadd.setPositiveButton(R.string.about_translate_proceed) { dialog, _ -> alertadd.setPositiveButton(R.string.about_translate_proceed) { dialog, _ ->
shareScreen(screenshot) shareScreen(screenshot)
} }
alertadd.setNegativeButton(android.R.string.cancel) { dialog, _ -> alertadd.setNegativeButton(R.string.cancel) { dialog, _ ->
dialog.cancel() dialog.cancel()
} }
alertadd.show() alertadd.show()

View file

@ -238,7 +238,7 @@ class ReviewActivity : BaseActivity() {
this, this,
getString(R.string.skip_image).uppercase(Locale.ROOT), getString(R.string.skip_image).uppercase(Locale.ROOT),
getString(R.string.skip_image_explanation), getString(R.string.skip_image_explanation),
getString(android.R.string.ok), getString(R.string.ok),
null, null,
null, null,
null null
@ -250,7 +250,7 @@ class ReviewActivity : BaseActivity() {
this, this,
getString(R.string.title_activity_review), getString(R.string.title_activity_review),
getString(R.string.review_image_explanation), getString(R.string.review_image_explanation),
getString(android.R.string.ok), getString(R.string.ok),
null, null,
null, null,
null null

View file

@ -446,7 +446,7 @@ class UploadActivity : BaseActivity(), UploadContract.View, UploadBaseFragment.C
this, this,
getString(R.string.storage_permissions_denied), getString(R.string.storage_permissions_denied),
getString(R.string.unable_to_share_upload_item), getString(R.string.unable_to_share_upload_item),
getString(android.R.string.ok) getString(R.string.ok)
) { finish() } ) { finish() }
} else { } else {
showAlertDialog( showAlertDialog(
@ -455,7 +455,7 @@ class UploadActivity : BaseActivity(), UploadContract.View, UploadBaseFragment.C
getString( getString(
R.string.write_storage_permission_rationale_for_image_share R.string.write_storage_permission_rationale_for_image_share
), ),
getString(android.R.string.ok) getString(R.string.ok)
) { checkStoragePermissions() } ) { checkStoragePermissions() }
} }
} }

View file

@ -117,7 +117,7 @@ class UploadCategoriesFragment : UploadBaseFragment(), CategoriesContract.View {
requireActivity(), requireActivity(),
getString(R.string.categories_activity_title), getString(R.string.categories_activity_title),
getString(R.string.categories_tooltip), getString(R.string.categories_tooltip),
getString(android.R.string.ok), getString(R.string.ok),
null null
) )
} }

View file

@ -116,7 +116,7 @@ class DepictsFragment : UploadBaseFragment(), DepictsContract.View {
requireActivity(), requireActivity(),
getString(R.string.depicts_step_title), getString(R.string.depicts_step_title),
getString(R.string.depicts_tooltip), getString(R.string.depicts_tooltip),
getString(android.R.string.ok), getString(R.string.ok),
null null
) )
} }

View file

@ -303,7 +303,7 @@ class UploadMediaDetailFragment : UploadBaseFragment(), UploadMediaDetailsContra
requireActivity(), requireActivity(),
getString(titleStringID), getString(titleStringID),
getString(messageStringId), getString(messageStringId),
getString(android.R.string.ok), getString(R.string.ok),
null null
) )
} }

View file

@ -209,8 +209,8 @@ object PermissionUtils {
activity, activity,
activity.getString(rationaleTitle), activity.getString(rationaleTitle),
activity.getString(rationaleMessage), activity.getString(rationaleMessage),
activity.getString(android.R.string.ok), activity.getString(R.string.ok),
activity.getString(android.R.string.cancel), activity.getString(R.string.cancel),
{ {
if (activity is UploadActivity) { if (activity is UploadActivity) {
activity.isShowPermissionsDialog = true activity.isShowPermissionsDialog = true

View file

@ -1,4 +0,0 @@
<vector android:height="16dp" android:viewportHeight="28"
android:viewportWidth="28" android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#2D8BA4" android:pathData="M14,0L11.533,2.467L21.298,12.25H0V15.75H21.298L11.533,25.532L14,28L28,14L14,0Z"/>
</vector>

View file

@ -149,13 +149,6 @@
android:textColor="#2D8BA4" android:textColor="#2D8BA4"
android:textSize="@dimen/normal_text" android:textSize="@dimen/normal_text"
android:textStyle="bold" /> android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/tiny_margin"
android:layout_weight="1"
android:src="@drawable/ic_arrow_16dp" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>

View file

@ -5,7 +5,7 @@
* Nemoralis * Nemoralis
--> -->
<resources> <resources>
<string name="crash_dialog_title">Nasazlıq</string> <string name="crash_dialog_title">Commons çökdü</string>
<string name="crash_dialog_text">Uups. Nəsə düzgün çalışmır!</string> <string name="crash_dialog_text">Uups. Nəsə düzgün çalışmır!</string>
<string name="crash_dialog_comment_prompt">Nə etdiyinizi bizə deyin, sonra e-poçt vasitəsilə bizimlə paylaşın. Bu, bizə bunu düzəltməyə kömək edəcək!</string> <string name="crash_dialog_comment_prompt">Nə etdiyinizi bizə deyin, sonra e-poçt vasitəsilə bizimlə paylaşın. Bu, bizə bunu düzəltməyə kömək edəcək!</string>
<string name="crash_dialog_ok_toast">Təşəkkürlər!</string> <string name="crash_dialog_ok_toast">Təşəkkürlər!</string>

View file

@ -1,9 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Authors: <!-- Authors:
* Amire80
* Shirayuki * Shirayuki
--> -->
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="all"> <resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="all">
<string name="crash_dialog_title">Title of dialog to show when the app crashes</string> <string name="crash_dialog_title">Title of dialog to show when the app crashes</string>
<string name="crash_dialog_text">Shown when the application crashed.</string>
<string name="crash_dialog_comment_prompt">Prompt asking people to enter info about what they were doing when the app crashed</string> <string name="crash_dialog_comment_prompt">Prompt asking people to enter info about what they were doing when the app crashed</string>
<string name="crash_dialog_ok_toast">Toast to be displayed once someone sends an error report thanking them.\n{{Identical|Thank you}}</string> <string name="crash_dialog_ok_toast">Toast to be displayed once someone sends an error report thanking them.\n{{Identical|Thank you}}</string>
</resources> </resources>

View file

@ -133,6 +133,7 @@
<string name="title_activity_settings">Settings</string> <string name="title_activity_settings">Settings</string>
<string name="title_activity_signup">Sign Up</string> <string name="title_activity_signup">Sign Up</string>
<string name="title_activity_featured_images">Featured Images</string> <string name="title_activity_featured_images">Featured Images</string>
<string name="images_featured_explanation">Featured images are contributions by highly skilled photographers and illustrators that the Wikimedia Commons community has chosen as some of the highest quality on the site.</string>
<string name="title_activity_custom_selector">Custom Selector</string> <string name="title_activity_custom_selector">Custom Selector</string>
<string name="title_activity_category_details">Category</string> <string name="title_activity_category_details">Category</string>
<string name="title_activity_review">Peer Review</string> <string name="title_activity_review">Peer Review</string>
@ -529,7 +530,6 @@ Upload your first media by tapping on the add button.</string>
<string name="error_occurred_in_picking_images">Error occurred while picking images</string> <string name="error_occurred_in_picking_images">Error occurred while picking images</string>
<string name="please_wait">Please wait…</string> <string name="please_wait">Please wait…</string>
<string name="images_featured_explanation">Featured pictures are images from highly skilled photographers and illustrators that the Wikimedia Commons community has chosen as some of the highest quality on the site.</string>
<string name="images_via_nearby_explanation">Images Uploaded via Nearby places are the images which are uploaded by discovering places on the map.</string> <string name="images_via_nearby_explanation">Images Uploaded via Nearby places are the images which are uploaded by discovering places on the map.</string>
<string name="thanks_received_explanation">This feature allows editors to send a Thank you notification to users who make useful edits by using a small thank link on the history page or diff page.</string> <string name="thanks_received_explanation">This feature allows editors to send a Thank you notification to users who make useful edits by using a small thank link on the history page or diff page.</string>
<string name="copy_image_caption_description">Copy to the next items</string> <string name="copy_image_caption_description">Copy to the next items</string>
@ -736,7 +736,7 @@ Upload your first media by tapping on the add button.</string>
<string name="back">Back</string> <string name="back">Back</string>
<string name="welcome_custom_picture_selector_text">Welcome to Custom Picture Selector</string> <string name="welcome_custom_picture_selector_text">Welcome to Custom Picture Selector</string>
<string name="custom_selector_info_text1">This picker shows you which pictures you have already uploaded to Commons.</string> <string name="custom_selector_info_text1">This picker shows you which pictures you have already uploaded to Commons.</string>
<string name="custom_selector_info_text2">Unlike the picture on the left, the picture on the right has the Commons logo indicating it is already uploaded. \n Touch and hold for image preview.</string> <string name="custom_selector_info_text2">Unlike the picture on the left, the picture on the right has the Commons logo indicating it is already uploaded.\n\nTouch and hold for image preview.</string>
<string name="welcome_custom_selector_ok">Awesome</string> <string name="welcome_custom_selector_ok">Awesome</string>
<string name="custom_selector_already_uploaded_image_text">This image has already been uploaded to Commons.</string> <string name="custom_selector_already_uploaded_image_text">This image has already been uploaded to Commons.</string>
<string name="custom_selector_over_limit_warning">For technical reasons, the app can\'t reliably upload more than %1$d pictures at once. The upload limit of %1$d has been exceeded by %2$d.</string> <string name="custom_selector_over_limit_warning">For technical reasons, the app can\'t reliably upload more than %1$d pictures at once. The upload limit of %1$d has been exceeded by %2$d.</string>
@ -767,7 +767,7 @@ Upload your first media by tapping on the add button.</string>
<string name="location_message">Location data helps Wiki editors find your picture, making it much more useful.\nYour recent uploads have no location.\nWe suggest you turn on location in your camera app\'s settings.\nThank you for uploading!</string> <string name="location_message">Location data helps Wiki editors find your picture, making it much more useful.\nYour recent uploads have no location.\nWe suggest you turn on location in your camera app\'s settings.\nThank you for uploading!</string>
<string name="no_location_found_title">No location found</string> <string name="no_location_found_title">No location found</string>
<string name="no_location_found_message">How about adding the place where this image was taken?\nLocation data helps Wiki editors find your picture, making it much more useful.\nThank you!</string> <string name="no_location_found_message">How about adding the place where this image was taken?\nLocation data helps Wiki editors find your picture, making it much more useful.\nThank you!</string>
<string name="add_location">Add location</string> <string name="add_location">Add Location</string>
<string name="feedback_sharing_data_alert">Please remove from this email any information that you are not comfortable sharing publicly. Also, please be aware that your email address with which you are posting, and the associated name and profile picture, will be visible publicly.</string> <string name="feedback_sharing_data_alert">Please remove from this email any information that you are not comfortable sharing publicly. Also, please be aware that your email address with which you are posting, and the associated name and profile picture, will be visible publicly.</string>
<string name="explore_map_details">Details</string> <string name="explore_map_details">Details</string>
<string name="achievements_unavailable_beta">Achievements are only available in the prod flavor. Please check the developer documentation.</string> <string name="achievements_unavailable_beta">Achievements are only available in the prod flavor. Please check the developer documentation.</string>
@ -788,8 +788,8 @@ Upload your first media by tapping on the add button.</string>
<string name="unmark_as_not_for_upload">Unmark as not for upload</string> <string name="unmark_as_not_for_upload">Unmark as not for upload</string>
<string name="marking_as_not_for_upload">Marking as not for upload</string> <string name="marking_as_not_for_upload">Marking as not for upload</string>
<string name="unmarking_as_not_for_upload">Unmarking as not for upload</string> <string name="unmarking_as_not_for_upload">Unmarking as not for upload</string>
<string name="show_already_actioned_pictures">Show already actioned pictures</string> <string name="show_already_actioned_pictures">Show already handled pictures</string>
<string name="hiding_already_actioned_pictures">Hiding already actioned pictures</string> <string name="hiding_already_actioned_pictures">Hiding already handled pictures</string>
<string name="no_more_images_found">No more images found</string> <string name="no_more_images_found">No more images found</string>
<string name="this_image_is_already_uploaded">This image is already uploaded</string> <string name="this_image_is_already_uploaded">This image is already uploaded</string>
<string name="can_not_select_this_image_for_upload">Can not select this image for upload</string> <string name="can_not_select_this_image_for_upload">Can not select this image for upload</string>

View file

@ -193,8 +193,8 @@ class DescriptionEditActivityUnitTest {
method.isAccessible = true method.isAccessible = true
method.invoke( method.invoke(
activity, activity,
android.R.string.ok, R.string.ok,
android.R.string.ok, R.string.ok,
) )
val dialog: AlertDialog = ShadowAlertDialog.getLatestDialog() as AlertDialog val dialog: AlertDialog = ShadowAlertDialog.getLatestDialog() as AlertDialog
assertEquals(dialog.isShowing, true) assertEquals(dialog.isShowing, true)