Merge branch 'main' into fix/infinite-progress-bar

This commit is contained in:
Nicolas Raoul 2025-06-22 22:50:24 +09:00 committed by GitHub
commit 7d374ceb07
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
65 changed files with 618 additions and 233 deletions

View file

@ -2,11 +2,35 @@
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="ClassWithOnlyPrivateConstructors" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="ComposePreviewDimensionRespectsLimit" enabled="true" level="WARNING" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="ComposePreviewMustBeTopLevelFunction" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="ComposePreviewNeedsComposableAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="ComposePreviewNotSupportedInUnitTestFiles" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="ConfusingElse" enabled="true" level="WARNING" enabled_by_default="true">
<option name="reportWhenNoStatementFollow" value="true" />
</inspection_tool>
<inspection_tool class="ControlFlowStatementWithoutBraces" enabled="true" level="ERROR" enabled_by_default="true" />
<inspection_tool class="ExplicitThis" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="GlancePreviewDimensionRespectsLimit" enabled="true" level="WARNING" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="GlancePreviewMustBeTopLevelFunction" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="GlancePreviewNeedsComposableAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="GlancePreviewNotSupportedInUnitTestFiles" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="LocalCanBeFinal" enabled="true" level="WARNING" enabled_by_default="true">
<option name="REPORT_VARIABLES" value="true" />
<option name="REPORT_PARAMETERS" value="true" />
@ -20,6 +44,27 @@
<inspection_tool class="OverlyStrongTypeCast" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoreInMatchingInstanceof" value="false" />
</inspection_tool>
<inspection_tool class="PreviewAnnotationInFunctionWithParameters" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewApiLevelMustBeValid" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewDeviceShouldUseNewSpec" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewFontScaleMustBeGreaterThanZero" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewMultipleParameterProviders" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewParameterProviderOnFirstParameter" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewPickerAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
</inspection_tool>
<inspection_tool class="ProblematicWhitespace" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="RedundantFieldInitialization" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="RedundantImplements" enabled="true" level="WARNING" enabled_by_default="true">

View file

@ -1,5 +1,13 @@
# Wikimedia Commons for Android
## v5.4.1
### What's changed
* Custom picker now detects images that are already available on Commons
* Improve credit line in image list
* Show place cards with loaded names only in the Nearby list
* Fix the error that occurs while loading images in Explore
## v5.3.0
### What's changed

View file

@ -24,8 +24,8 @@ android {
applicationId = "fr.free.nrw.commons"
minSdk = 21
targetSdk = 34
versionCode = 1043
versionName = "5.1.2"
versionCode = 1053
versionName = "5.5.0"
setProperty("archivesBaseName", "app-commons-v$versionName-" + getBranchName())
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
@ -443,4 +443,4 @@ fun getBranchName(): String? {
} catch (e: Exception) {
null
}
}
}

View file

@ -49,7 +49,7 @@ class UploadCancelledTest {
fun setup() {
try {
Intents.init()
} catch (ex: IllegalStateException) {
} catch (_: IllegalStateException) {
}
device.unfreezeRotation()
device.setOrientationNatural()
@ -65,7 +65,7 @@ class UploadCancelledTest {
fun teardown() {
try {
Intents.release()
} catch (ex: IllegalStateException) {
} catch (_: IllegalStateException) {
}
}

View file

@ -71,7 +71,7 @@ class UploadTest {
fun setup() {
try {
Intents.init()
} catch (ex: IllegalStateException) {
} catch (_: IllegalStateException) {
}
UITestHelper.loginUser()
UITestHelper.skipWelcome()

View file

@ -28,9 +28,7 @@ class Media constructor(
*/
var filename: String? = null,
/**
* Gets or sets the file description.
* @return file description as a string
* @param fallbackDescription the new description of the file
* The fallback description of the file, used if no other description is provided.
*/
var fallbackDescription: String? = null,
/**
@ -40,19 +38,24 @@ class Media constructor(
*/
var dateUploaded: Date? = null,
/**
* Gets or sets the license name of the file.
* @return license as a String
* @param license license name as a String
* The license name of the file.
*/
var license: String? = null,
/**
* The URL corresponding to the license.
*/
var licenseUrl: String? = null,
/**
* Gets or sets the name of the creator of the file.
* @return author name as a String
* @param author creator name as a string
* The name of the creator of the file.
*/
var author: String? = null,
/**
* The username of the uploader.
*/
var user: String? = null,
/**
* The full name of the file's creator, if different from username.
*/
var creatorName: String? = null,
/**
* Gets the categories the file falls under.

View file

@ -129,9 +129,10 @@ interface PageEditInterface {
): Observable<Entities>
/**
* Get wiki text for provided file names
* @param titles : Name of the file
* @return Single<MwQueryResult>
* Gets the wiki text for the provided file name.
*
* @param title The title (name) of the file to fetch wiki text for.
* @return A Single emitting the wiki query response.
*/
@GET(MW_API_PREFIX + "action=query&prop=revisions&rvprop=content|timestamp&rvlimit=1&converttitles=")
fun getWikiText(

View file

@ -158,7 +158,9 @@ class SingleWebViewActivity : ComponentActivity() {
webChromeClient = object : WebChromeClient() {
override fun onConsoleMessage(message: ConsoleMessage): Boolean {
Timber.d("Console: ${message.message()} -- From line ${message.lineNumber()} of ${message.sourceId()}")
Timber.d("%s%s",
"Console: ${message.message()} -- From line ",
"${message.lineNumber()} of ${message.sourceId()}")
return true
}
}

View file

@ -8,7 +8,7 @@ class Bookmark(
/**
* Gets or Sets the content URI - marking this bookmark as already saved in the database
* @return content URI
* @param contentUri the content URI
* contentUri the content URI
*/
var contentUri: Uri?,
) {

View file

@ -22,9 +22,9 @@ class ExceptionAwareThreadPoolExecutor(
if (r.isDone) {
r.get()
}
} catch (e: CancellationException) {
} catch (_: CancellationException) {
// ignore
} catch (e: InterruptedException) {
} catch (_: InterruptedException) {
// ignore
} catch (e: ExecutionException) {
throwable = e.cause ?: e

View file

@ -253,13 +253,14 @@ class ContributionController @Inject constructor(@param:Named("default_preferenc
*/
fun initiateCustomGalleryPickWithPermission(
activity: Activity,
resultLauncher: ActivityResultLauncher<Intent>
resultLauncher: ActivityResultLauncher<Intent>,
singleSelection: Boolean = false
) {
setPickerConfiguration(activity, true)
checkPermissionsAndPerformAction(
activity,
{ openCustomSelector(activity, resultLauncher, 0) },
{ FilePicker.openCustomSelector(activity, resultLauncher, 0, singleSelection) },
R.string.storage_permission_title,
R.string.write_storage_permission_rationale,
*PERMISSIONS_STORAGE

View file

@ -139,7 +139,7 @@ class ContributionsFragment : CommonsDaggerSupportFragment(), FragmentManager.On
private var wlmCampaign: Campaign? = null
var userName: String? = null
private var userName: String? = null
private var isUserProfile = false
private var mSensorManager: SensorManager? = null
@ -808,10 +808,11 @@ class ContributionsFragment : CommonsDaggerSupportFragment(), FragmentManager.On
}
}
/**
* Temporarily disabled, see issue [https://github.com/commons-app/apps-android-commons/issues/5847]
* @param count The number of pending uploads.
*/
// /**
// * Temporarily disabled. See issue [#5847](https://github.com/commons-app/apps-android-commons/issues/5847)
// * @param count The number of pending uploads.
// */
// public void updateUploadIcon(int count) {
// public void updateUploadIcon(int count) {
// if (pendingUploadsImageView != null) {
// if (count != 0) {

View file

@ -17,8 +17,11 @@ interface ImageSelectListener {
)
/**
* onLongPress
* @param imageUri : uri of image
* Called when the user performs a long press on an image.
*
* @param position The index of the pressed image in the list.
* @param images The list of all available images.
* @param selectedImages The currently selected images.
*/
fun onLongPress(
position: Int,

View file

@ -8,15 +8,15 @@ sealed class CallbackStatus {
/**
IDLE : The callback is idle , doing nothing.
*/
object IDLE : CallbackStatus()
data object IDLE : CallbackStatus()
/**
FETCHING : Fetching images.
*/
object FETCHING : CallbackStatus()
data object FETCHING : CallbackStatus()
/**
SUCCESS : Success fetching images.
*/
object SUCCESS : CallbackStatus()
data object SUCCESS : CallbackStatus()
}

View file

@ -327,12 +327,17 @@ class ImageAdapter(
// Getting clicked index from all images index when show_already_actioned_images
// switch is on
if (singleSelection) {
// If single selection mode, clear previous selection and select only the new one
if (selectedImages.isNotEmpty() && (selectedImages[0] != images[position])) {
val prevIndex = images.indexOf(selectedImages[0])
selectedImages.clear()
notifyItemChanged(prevIndex, ImageUnselected())
}
}
val clickedIndex: Int =
if (showAlreadyActionedImages) {
ImageHelper.getIndex(selectedImages, images[position])
// Getting clicked index from actionable images when show_already_actioned_images
// switch is off
} else {
ImageHelper.getIndex(selectedImages, ArrayList(actionableImagesMap.values)[position])
}
@ -618,4 +623,13 @@ class ImageAdapter(
* Returns the text for showing inside the bubble during bubble scroll.
*/
override fun getSectionName(position: Int): String = images[position].date
private var singleSelection: Boolean = false
/**
* Set single selection mode
*/
fun setSingleSelection(single: Boolean) {
singleSelection = single
}
}

View file

@ -104,7 +104,7 @@ class CustomSelectorActivity :
/**
* Maximum number of images that can be selected.
*/
private val uploadLimit: Int = 20
private var uploadLimit: Int = 20
/**
* Flag that is marked true when the amount
@ -207,6 +207,9 @@ class CustomSelectorActivity :
CustomSelectorViewModel::class.java,
)
// Check for single selection extra
uploadLimit = if (intent.getBooleanExtra(EXTRA_SINGLE_SELECTION, false)) 1 else 20
setupViews()
if (prefs.getBoolean("customSelectorFirstLaunch", true)) {
@ -610,8 +613,11 @@ class CustomSelectorActivity :
}
/**
* onLongPress
* @param imageUri : uri of image
* Triggered when the user performs a long press on an image.
*
* @param position The index of the selected image.
* @param images The list of all available images.
* @param selectedImages The list of images currently selected.
*/
override fun onLongPress(
position: Int,
@ -725,6 +731,7 @@ class CustomSelectorActivity :
const val FOLDER_ID: String = "FolderId"
const val FOLDER_NAME: String = "FolderName"
const val ITEM_ID: String = "ItemId"
const val EXTRA_SINGLE_SELECTION: String = "EXTRA_SINGLE_SELECTION"
}
}

View file

@ -104,7 +104,8 @@ class ImageFileLoader(
if (file != null && file.exists() && name != null && path != null && bucketName != null) {
val extension = path.substringAfterLast(".", "")
// Check if the extension is one of the allowed types
if (extension.lowercase(Locale.ROOT) !in arrayOf("jpg", "jpeg", "png", "svg", "gif", "tiff", "webp", "xcf")) {
if (extension.lowercase(Locale.ROOT) !in arrayOf("jpg", "jpeg", "png", "svg",
"gif", "tiff", "webp", "xcf")) {
continue
}

View file

@ -212,6 +212,9 @@ class ImageFragment :
_binding = FragmentCustomSelectorBinding.inflate(inflater, container, false)
imageAdapter =
ImageAdapter(requireActivity(), activity as ImageSelectListener, imageLoader!!)
// Set single selection mode if needed
val singleSelection = (activity as? CustomSelectorActivity)?.intent?.getBooleanExtra(CustomSelectorActivity.EXTRA_SINGLE_SELECTION, false) == true
imageAdapter.setSingleSelection(singleSelection)
gridLayoutManager = GridLayoutManager(context, getSpanCount())
with(binding?.selectorRv) {
this?.layoutManager = gridLayoutManager

View file

@ -30,7 +30,7 @@ import fr.free.nrw.commons.upload.depicts.DepictsDao
*/
@Database(
entities = [Contribution::class, Depicts::class, UploadedStatus::class, NotForUploadStatus::class, ReviewEntity::class, Place::class, BookmarksCategoryModal::class, BookmarksLocations::class],
version = 20,
version = 21,
exportSchema = false,
)
@TypeConverters(Converters::class)

View file

@ -238,10 +238,10 @@ class NetworkingModule {
factory.create(BuildConfig.COMMONS_URL)
/**
* Add provider for WikidataMediaInterface
* It creates a retrofit service for the commons wiki site
* @param commonsWikiSite commonsWikiSite
* @return WikidataMediaInterface
* Provides a Retrofit service for accessing the commons wiki site via [WikidataMediaInterface].
*
* @param factory The CommonsServiceFactory used to create the Retrofit service.
* @return An instance of [WikidataMediaInterface].
*/
@Provides
@Singleton

View file

@ -60,7 +60,9 @@ import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.inject.Inject;
import javax.inject.Named;
import org.osmdroid.events.MapEventsReceiver;
@ -98,6 +100,7 @@ public class ExploreMapFragment extends CommonsDaggerSupportFragment
private GeoPoint mapCenter;
private GeoPoint lastMapFocus;
IntentFilter intentFilter = new IntentFilter(MapUtils.NETWORK_INTENT_ACTION);
private Map<BaseMarker, Overlay> baseMarkerOverlayMap;
@Inject
LiveDataConverter liveDataConverter;
@ -779,6 +782,9 @@ public class ExploreMapFragment extends CommonsDaggerSupportFragment
}
clickedMarker = nearbyBaseMarker;
passInfoToSheet(place);
//Move the overlay to the top so it can be fully seen.
moveOverlayToTop(getOverlay(item));
return true;
}
@ -788,11 +794,62 @@ public class ExploreMapFragment extends CommonsDaggerSupportFragment
}
}, getContext());
if (this.baseMarkerOverlayMap == null) {
this.baseMarkerOverlayMap = new HashMap<>();
}
this.baseMarkerOverlayMap.put(nearbyBaseMarker, overlay);
overlay.setFocusItemsOnTap(true);
binding.mapView.getOverlays().add(overlay); // Add the overlay to the map
}
}
/**
* Moves the specified Overlay above all other Overlays. This prevents other Overlays from
* obstructing it. Upon failure, this method returns early.
* @param overlay The Overlay to move.
*/
private void moveOverlayToTop (Overlay overlay) {
if (overlay == null || binding == null || binding.mapView.getOverlays() == null) {
return;
}
boolean successfulRemoval = binding.mapView.getOverlays().remove(overlay);
if (!successfulRemoval) {
return;
}
binding.mapView.getOverlays().add(overlay);
}
/**
* Performs a linear search for the first Overlay which contains the specified OverlayItem.
*
* @param item The OverlayItem contained within the first target Overlay.
* @return The first Overlay which contains the specified OverlayItem or null if the Overlay
* could not be found.
*/
private Overlay getOverlay (OverlayItem item) {
if (item == null || binding == null || binding.mapView.getOverlays() == null) {
return null;
}
for (int i = 0; i < binding.mapView.getOverlays().size(); i++) {
if (binding.mapView.getOverlays().get(i) instanceof ItemizedOverlayWithFocus) {
ItemizedOverlayWithFocus overlay =
(ItemizedOverlayWithFocus)binding.mapView.getOverlays().get(i);
for (int j = 0; j < overlay.size(); j++) {
if (overlay.getItem(j) == item) {
return overlay;
}
}
}
}
return null;
}
/**
* Retrieves the specific Media object from the mediaList field.
* @param url The specific Media's image URL.
@ -819,24 +876,22 @@ public class ExploreMapFragment extends CommonsDaggerSupportFragment
* @param nearbyBaseMarker The NearbyBaseMarker object representing the marker to be removed.
*/
private void removeMarker(BaseMarker nearbyBaseMarker) {
if (nearbyBaseMarker == null || nearbyBaseMarker.getPlace().getName() == null) {
if (nearbyBaseMarker == null || nearbyBaseMarker.getPlace().getName() == null ||
baseMarkerOverlayMap == null || !baseMarkerOverlayMap.containsKey(nearbyBaseMarker)) {
return;
}
String target = nearbyBaseMarker.getPlace().getName();
Overlay target = baseMarkerOverlayMap.get(nearbyBaseMarker);
List<Overlay> overlays = binding.mapView.getOverlays();
ItemizedOverlayWithFocus item;
for (int i = 0; i < overlays.size(); i++) {
if (overlays.get(i) instanceof ItemizedOverlayWithFocus) {
item = (ItemizedOverlayWithFocus) overlays.get(i);
OverlayItem overlayItem = item.getItem(0);
Overlay overlay = overlays.get(i);
if (overlayItem.getTitle().equals(target)) {
binding.mapView.getOverlays().remove(i);
binding.mapView.invalidate();
break;
}
if (overlay.equals(target)) {
binding.mapView.getOverlays().remove(i);
binding.mapView.invalidate();
baseMarkerOverlayMap.remove(nearbyBaseMarker);
break;
}
}
}

View file

@ -9,9 +9,9 @@ import java.util.Date
*/
class RecentSearch(
/**
* Modifies the content URI - marking this query as already saved in the database
* The content URI that marks this query as already saved in the database.
*
* @param contentUri the content URI
* @property contentUri the content URI
*/
var contentUri: Uri?,
/**

View file

@ -25,6 +25,9 @@ object FilePicker : Constants {
private const val KEY_LAST_CAMERA_VIDEO = "last_video"
private const val KEY_TYPE = "type"
// Add extra for single selection
private const val EXTRA_SINGLE_SELECTION = "EXTRA_SINGLE_SELECTION"
/**
* Returns the uri of the clicked image so that it can be put in MediaStore
*/
@ -73,12 +76,17 @@ object FilePicker : Constants {
* CreateCustomSectorIntent, creates intent for custom selector activity.
* @param context
* @param type
* @param singleSelection If true, restricts to single image selection
* @return Custom selector intent
*/
@JvmStatic
private fun createCustomSelectorIntent(context: Context, type: Int): Intent {
private fun createCustomSelectorIntent(context: Context, type: Int, singleSelection: Boolean = false): Intent {
storeType(context, type)
return Intent(context, CustomSelectorActivity::class.java)
val intent = Intent(context, CustomSelectorActivity::class.java)
if (singleSelection) {
intent.putExtra(EXTRA_SINGLE_SELECTION, true)
}
return intent
}
@JvmStatic
@ -153,9 +161,10 @@ object FilePicker : Constants {
fun openCustomSelector(
activity: Activity,
resultLauncher: ActivityResultLauncher<Intent>,
type: Int
type: Int,
singleSelection: Boolean = false
) {
val intent = createCustomSelectorIntent(activity, type)
val intent = createCustomSelectorIntent(activity, type, singleSelection)
resultLauncher.launch(intent)
}

View file

@ -535,40 +535,38 @@ ${"wd:" + place.wikiDataEntityId}"""
)
if (placeBindings != null) {
for ((item1, label, location, clas) in placeBindings) {
if (item1 != null && label != null && clas != null) {
val input = location.value
val pattern = Pattern.compile(
"Point\\(([-+]?[0-9]*\\.?[0-9]+) ([-+]?[0-9]*\\.?[0-9]+)\\)"
)
val matcher = pattern.matcher(input)
val input = location.value
val pattern = Pattern.compile(
"Point\\(([-+]?[0-9]*\\.?[0-9]+) ([-+]?[0-9]*\\.?[0-9]+)\\)"
)
val matcher = pattern.matcher(input)
if (matcher.find()) {
val longStr = matcher.group(1)
val latStr = matcher.group(2)
val itemUrl = item1.value
val itemName = label.value.replace("&", "&amp;")
val itemLatitude = latStr
val itemLongitude = longStr
val itemClass = clas.value
if (matcher.find()) {
val longStr = matcher.group(1)
val latStr = matcher.group(2)
val itemUrl = item1.value
val itemName = label.value.replace("&", "&amp;")
val itemLatitude = latStr
val itemLongitude = longStr
val itemClass = clas.value
val formattedItemName =
if (!itemClass.isEmpty())
"$itemName ($itemClass)"
else
itemName
val formattedItemName =
if (!itemClass.isEmpty())
"$itemName ($itemClass)"
else
itemName
val kmlEntry = ("""
<Placemark>
<name>$formattedItemName</name>
<description>$itemUrl</description>
<Point>
<coordinates>$itemLongitude,$itemLatitude</coordinates>
</Point>
</Placemark>""")
kmlString = kmlString + kmlEntry
} else {
Timber.e("No match found")
}
val kmlEntry = ("""
<Placemark>
<name>$formattedItemName</name>
<description>$itemUrl</description>
<Point>
<coordinates>$itemLongitude,$itemLatitude</coordinates>
</Point>
</Placemark>""")
kmlString = kmlString + kmlEntry
} else {
Timber.e("No match found")
}
}
}
@ -593,37 +591,35 @@ ${"wd:" + place.wikiDataEntityId}"""
val placeBindings = runQuery(leftLatLng, rightLatLng)
if (placeBindings != null) {
for ((item1, label, location, clas) in placeBindings) {
if (item1 != null && label != null && clas != null) {
val input = location.value
val pattern = Pattern.compile(
"Point\\(([-+]?[0-9]*\\.?[0-9]+) ([-+]?[0-9]*\\.?[0-9]+)\\)"
)
val matcher = pattern.matcher(input)
val input = location.value
val pattern = Pattern.compile(
"Point\\(([-+]?[0-9]*\\.?[0-9]+) ([-+]?[0-9]*\\.?[0-9]+)\\)"
)
val matcher = pattern.matcher(input)
if (matcher.find()) {
val longStr = matcher.group(1)
val latStr = matcher.group(2)
val itemUrl = item1.value
val itemName = label.value.replace("&", "&amp;")
val itemLatitude = latStr
val itemLongitude = longStr
val itemClass = clas.value
if (matcher.find()) {
val longStr = matcher.group(1)
val latStr = matcher.group(2)
val itemUrl = item1.value
val itemName = label.value.replace("&", "&amp;")
val itemLatitude = latStr
val itemLongitude = longStr
val itemClass = clas.value
val formattedItemName = if (!itemClass.isEmpty())
"$itemName ($itemClass)"
else
itemName
val formattedItemName = if (!itemClass.isEmpty())
"$itemName ($itemClass)"
else
itemName
val gpxEntry =
("""
<wpt lat="$itemLatitude" lon="$itemLongitude">
<name>$itemName</name>
<url>$itemUrl</url>
</wpt>""")
gpxString = gpxString + gpxEntry
} else {
Timber.e("No match found")
}
val gpxEntry =
("""
<wpt lat="$itemLatitude" lon="$itemLongitude">
<name>$itemName</name>
<url>$itemUrl</url>
</wpt>""")
gpxString = gpxString + gpxEntry
} else {
Timber.e("No match found")
}
}
}

View file

@ -16,7 +16,7 @@ import fr.free.nrw.commons.nearby.model.BottomSheetItem
/**
* RecyclerView Adapter for displaying items in a bottom sheet.
*
* @property context The context used for inflating layout resources.
* @param context The context used for inflating layout resources.
* @property itemList The list of BottomSheetItem objects to display.
* @constructor Creates an instance of BottomSheetAdapter.
*/

View file

@ -63,6 +63,7 @@ import fr.free.nrw.commons.bookmarks.locations.BookmarkLocationsDao
import fr.free.nrw.commons.contributions.ContributionController
import fr.free.nrw.commons.contributions.MainActivity
import fr.free.nrw.commons.contributions.MainActivity.ActiveFragment
import fr.free.nrw.commons.customselector.ui.selector.ImageLoader
import fr.free.nrw.commons.databinding.FragmentNearbyParentBinding
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment
import fr.free.nrw.commons.filepicker.FilePicker
@ -973,7 +974,7 @@ class NearbyParentFragment : CommonsDaggerSupportFragment(),
} else if (bottomSheetDetailsBehavior!!.state
== BottomSheetBehavior.STATE_EXPANDED
) {
bottomSheetDetailsBehavior!!.state = BottomSheetBehavior.STATE_COLLAPSED
bottomSheetDetailsBehavior!!.setState(BottomSheetBehavior.STATE_COLLAPSED)
}
}
@ -1756,9 +1757,9 @@ class NearbyParentFragment : CommonsDaggerSupportFragment(),
override fun animateFABs() {
if (binding!!.fabPlus.isShown) {
if (isFABsExpanded) {
collapseFABs(isFABsExpanded)
collapseFABs(true)
} else {
expandFABs(isFABsExpanded)
expandFABs(false)
}
}
}
@ -2013,17 +2014,17 @@ class NearbyParentFragment : CommonsDaggerSupportFragment(),
if (place.exists && place.pic.trim { it <= ' ' }.isEmpty()) {
shouldUpdateMarker = true
}
} else if (displayExists && !displayNeedsPhoto) {
} else if (displayExists) {
// Exists and all included needs and doesn't needs photo
if (place.exists) {
shouldUpdateMarker = true
}
} else if (!displayExists && displayNeedsPhoto) {
} else if (displayNeedsPhoto) {
// All and only needs photo
if (place.pic.trim { it <= ' ' }.isEmpty()) {
shouldUpdateMarker = true
}
} else if (!displayExists && !displayNeedsPhoto) {
} else {
// all
shouldUpdateMarker = true
}
@ -2456,9 +2457,11 @@ class NearbyParentFragment : CommonsDaggerSupportFragment(),
Timber.d("Gallery button tapped. Place: %s", selectedPlace.toString())
storeSharedPrefs(selectedPlace!!)
activity?.let {
// Pass singleSelection = true for Nearby flow
controller!!.initiateCustomGalleryPickWithPermission(
it,
customSelectorLauncherForResult
customSelectorLauncherForResult,
singleSelection = true
)
}
}

View file

@ -351,6 +351,7 @@ class NearbyParentFragmentPresenter
pic = repoPlace.pic ?: ""
exists = repoPlace.exists ?: true
longDescription = repoPlace.longDescription ?: ""
language = repoPlace.language
}
} else {
indicesToUpdate.add(i)

View file

@ -389,7 +389,7 @@ class AchievementsFragment : CommonsDaggerSupportFragment(){
* @param badgeTextColor The badge text color. Default is R.attr.colorPrimary
* @param badgeGravity The position of the badge [TOP_END,TOP_START,BOTTOM_END,BOTTOM_START]. Default is TOP_END
* @return if the number is 0, then it will not create badge for it and hide the view
* @see https://developer.android.com/reference/com/google/android/material/badge/BadgeDrawable
* @see <a href="https://developer.android.com/reference/com/google/android/material/badge/BadgeDrawable">BadgeDrawable (Android Developer)</a>
*/
private fun showBadgesWithCount(

View file

@ -93,10 +93,11 @@ class QuizResultActivity : AppCompatActivity() {
}
/**
* Function to call intent to an activity
* @param context
* @param cls
* @param flags
* Starts an activity using the provided context, target class, and intent flags.
*
* @param context The context used to start the activity.
* @param cls The target activity class.
* @param flags A variable number of intent flags to apply to the Intent.
*/
companion object {
fun <T> startActivityWithFlags(context: Context, cls: Class<T>, vararg flags: Int) {

View file

@ -199,10 +199,11 @@ class UploadRepository @Inject constructor(
}
/**
* Query the RemoteDataSource for image duplicity check
* Queries the RemoteDataSource to check if the image is a duplicate.
*
* @param filePath file to be checked
* @return IMAGE_DUPLICATE or IMAGE_OK
* @param originalFilePath The original file to be checked.
* @param modifiedFilePath The modified version of the file (if any).
* @return IMAGE_DUPLICATE if the image already exists, otherwise IMAGE_OK.
*/
fun checkDuplicateImage(originalFilePath: Uri?, modifiedFilePath: Uri?): Single<Int> {
return uploadModel.checkDuplicateImage(originalFilePath, modifiedFilePath)

View file

@ -55,10 +55,10 @@ class ReviewActivity : BaseActivity() {
}
/**
* Consumers should be simply using this method to use this activity.
* Starts the ReviewActivity.
*
* @param context
* @param title Page title
* @param context The context used to start the activity.
* @param title The page title (currently unused).
*/
companion object {
fun startYourself(context: Context, title: String) {

View file

@ -276,9 +276,7 @@ class SettingsFragment : PreferenceFragmentCompat() {
}
/**
* Asks users to provide location access
*
* @param activity
* Asks users to provide location access.
*/
private fun createDialogsAndHandleLocationPermissions() {
inAppCameraLocationPermissionLauncher.launch(arrayOf(permission.ACCESS_FINE_LOCATION))

View file

@ -6,29 +6,29 @@ package fr.free.nrw.commons.upload
class Description {
/**
* The language code, e.g., "en" or "fr".
* @param languageCode The language code.
* @property languageCode The language code.
*/
var languageCode: String? = null
/**
* The description text for the item being uploaded.
* @param descriptionText The description text.
* @property descriptionText The description text.
*/
var descriptionText: String? = null
/**
* The index of the language selected in a spinner with [SpinnerLanguagesAdapter].
* @param selectedLanguageIndex The index of the selected language.
* @property selectedLanguageIndex The index of the selected language.
*/
var selectedLanguageIndex = -1
/**
* Indicates if the description was added manually (by the user or programmatically).
* @param manuallyAdded Sets to true if the description was manually added by the user.
* @return True if the description was manually added.
*/
var isManuallyAdded = false
/**
* Returns true if the description text is null or empty.
*/
val isEmpty: Boolean
get() = descriptionText == null || descriptionText!!.isEmpty()

View file

@ -137,13 +137,12 @@ class FileProcessor
}
}
/**
* Find other images around the same location that were taken within the last 20 sec
*
* @param originalImageCoordinates
* @param fileBeingProcessed
* @param similarImageInterface
*/
/**
* Finds other images around the same location that were taken within a ±120 sec window.
*
* @param fileBeingProcessed The file currently being checked.
* @param similarImageInterface Callback to display similar images if any are found.
*/
private fun findOtherImages(
fileBeingProcessed: File,
similarImageInterface: SimilarImageInterface?,

View file

@ -138,10 +138,10 @@ class ImageProcessingService @Inject constructor(
}
/**
* Checks for duplicate image
* Checks for duplicate image by calculating its SHA1 hash and querying the media client.
*
* @param filePath file to be checked
* @return IMAGE_DUPLICATE or IMAGE_OK
* @param inputStream The input stream of the file to check.
* @return IMAGE_DUPLICATE if the file exists, or IMAGE_OK otherwise.
*/
private fun checkDuplicateImage(inputStream: InputStream): Single<Int> {
return Single.fromCallable { fileUtilsWrapper.getSHA1(inputStream) }

View file

@ -10,18 +10,15 @@ import kotlinx.parcelize.Parcelize
@Parcelize
data class UploadMediaDetail(
/**
* The language code ie. "en" or "fr".
* @param languageCode The language code ie. "en" or "fr".
* The language code, e.g., "en" or "fr".
*/
var languageCode: String? = null,
/**
* The description text for the item being uploaded.
* @param descriptionText The description text.
*/
var descriptionText: String? = "",
/**
* The caption text for the item being uploaded.
* @param captionText The caption text.
*/
var captionText: String = "",
) : Parcelable {
@ -35,15 +32,11 @@ data class UploadMediaDetail(
/**
* The index of the language selected in a spinner with [SpinnerLanguagesAdapter].
* @return The index of the selected language.
* @param selectedLanguageIndex The index of the language selected.
*/
var selectedLanguageIndex: Int = -1
/**
* Returns if the description was added manually (by the user, or programmatically).
* @return True if the description was manually added.
* @param manuallyAdded Sets to true if the description was manually added.
* Indicates whether the description was added manually (by the user or programmatically).
*/
var isManuallyAdded: Boolean = false
}

View file

@ -30,9 +30,10 @@ class UploadMediaDetailInputFilter : InputFilter {
patterns.any { it.matcher(source).find() }
/**
* Removes any blocklisted characters from the source text.
* @param source input text
* @return a cleaned character sequence
* Removes any blocklisted characters from the input text.
*
* @param input The input text to be cleaned.
* @return A cleaned character sequence with blocklisted patterns removed.
*/
private fun removeBlocklisted(input: CharSequence): CharSequence {
var source = input

View file

@ -98,10 +98,11 @@ class UploadModel @Inject internal constructor(
imageProcessingService.validateImage(uploadItem, inAppPictureLocation)
/**
* Calls checkDuplicateImage() of ImageProcessingService to check if image is duplicate
* Calls checkDuplicateImage() of ImageProcessingService to check if the image is a duplicate.
*
* @param filePath file to be checked
* @return IMAGE_DUPLICATE or IMAGE_OK
* @param originalFilePath The original file URI.
* @param modifiedFilePath The modified file URI.
* @return IMAGE_DUPLICATE if the file already exists, IMAGE_OK otherwise.
*/
fun checkDuplicateImage(originalFilePath: Uri?, modifiedFilePath: Uri?): Single<Int> =
imageProcessingService.checkIfFileAlreadyExists(

View file

@ -472,7 +472,10 @@ class UploadWorker(
if (wikiDataPlace != null) {
if (!contribution.hasInvalidLocation()) {
var revisionID: Long? = null
val p18WasSkipped = !wikiDataPlace.imageValue.isNullOrBlank()
try {
if (!p18WasSkipped) {
// Only set P18 if the place does not already have a picture
revisionID =
wikidataEditService.createClaim(
wikiDataPlace,
@ -489,9 +492,11 @@ class UploadWorker(
.subscribeOn(Schedulers.io())
.blockingAwait()
Timber.d("Updated WikiItem place ${place.name} with image ${place.pic}")
}
}
showSuccessNotification(contribution)
}
// Always show success notification, whether P18 was set or skipped
showSuccessNotification(contribution)
} catch (exception: Exception) {
Timber.e(exception)
}
@ -500,6 +505,7 @@ class UploadWorker(
wikidataEditService.handleImageClaimResult(
contribution.wikidataPlace!!,
revisionID,
p18WasSkipped = p18WasSkipped
)
}
} else {

View file

@ -16,12 +16,12 @@ object LocationUtils {
val indexOfPrefix = customQuery.indexOf("Point(")
if (indexOfPrefix == -1) {
Timber.e("Invalid prefix index - Seems like user has entered an invalid query")
return latLng
return null
}
val indexOfSuffix = customQuery.indexOf(")\"", indexOfPrefix)
if (indexOfSuffix == -1) {
Timber.e("Invalid suffix index - Seems like user has entered an invalid query")
return latLng
return null
}
val latLngString = customQuery.substring(indexOfPrefix + "Point(".length, indexOfSuffix)
if (latLngString.isEmpty()) {

View file

@ -196,13 +196,16 @@ class WikidataEditService @Inject constructor(
return wikidataClient.setClaim(claim, COMMONS_APP_TAG).blockingSingle()
}
fun handleImageClaimResult(wikidataItem: WikidataItem, revisionId: Long?) {
fun handleImageClaimResult(wikidataItem: WikidataItem, revisionId: Long?, p18WasSkipped: Boolean = false) {
if (revisionId != null) {
wikidataEditListener?.onSuccessfulWikidataEdit()
showSuccessToast(wikidataItem.name)
} else {
} else if (!p18WasSkipped) {
Timber.d("Unable to make wiki data edit for entity %s", wikidataItem)
showLongToast(context, context.getString(R.string.wikidata_edit_failure))
} else {
Timber.d("Wikidata edit skipped for entity %s because P18 already exists", wikidataItem)
// No error shown to user, as this is not a failure
}
}

View file

@ -32,8 +32,8 @@ class PageTitle : Parcelable {
* looking at.
*
* Examples:
* * [[Manchester]] on enwiki will have a namespace of null
* * [[Deutschland]] on dewiki will have a namespace of null
* * \[\[Manchester\]\] on enwiki will have a namespace of null
* * \[\[Deutschland\]\] on dewiki will have a namespace of null
* * [[User:Deskana]] on enwiki will have a namespace of "User"
* * [[Utilisateur:Deskana]] on frwiki will have a namespace of "Utilisateur", even if you got
* to the page by going to [[User:Deskana]] and having MediaWiki automatically redirect you.

View file

@ -12,6 +12,7 @@
* Mohammed Galib Hasan
* Muktogayn
* NahidHossain
* Nokib Sarkar
* R4356th
* Rasal Lia
* Sankarshan
@ -32,6 +33,7 @@
<string name="commons_github">কমন্স গিটহাব উৎস কোড</string>
<string name="commons_logo">কমন্সের লোগো</string>
<string name="commons_website">কমন্স ওয়েবসাইট</string>
<string name="exit_location_picker">লোকেশন পিকার থেকে বেরিয়ে আসুন</string>
<string name="submit">জমা দিন</string>
<string name="add_another_description">আরেকটি বিবরণ যোগ করুন</string>
<string name="add_new_contribution">নতুন অবদান যোগ করুন</string>
@ -44,6 +46,9 @@
<string name="show_captions_description">বিবরণ</string>
<string name="nearby_row_image">চিত্র</string>
<string name="nearby_all">সব</string>
<string name="nearby_filter_toggle">টগল আপ</string>
<string name="nearby_filter_search">অনুসন্ধান দৃশ্য</string>
<string name="nearby_filter_state">স্থানের অবস্থা</string>
<string name="appwidget_img">আজকের চিত্র</string>
<plurals name="uploads_pending_notification_indicator">
<item quantity="one">%1$dটি ফাইল আপলোড হচ্ছে</item>
@ -70,6 +75,10 @@
<item quantity="one">%1$dটি আপলোড</item>
<item quantity="other">%1$dটি আপলোড</item>
</plurals>
<plurals name="receiving_shared_content">
<item quantity="one">শেয়ার করা কন্টেন্ট পাওয়া। ছবির আকার এবং আপনার ডিভাইসের উপর নির্ভর করে ছবিটি প্রক্রিয়াকরণে কিছুটা সময় লাগতে পারে</item>
<item quantity="other">শেয়ার করা কন্টেন্ট পাওয়া। ছবির আকার এবং আপনার ডিভাইসের উপর নির্ভর করে ছবি প্রক্রিয়াকরণে কিছুটা সময় লাগতে পারে</item>
</plurals>
<string name="navigation_item_explore">অন্বেষণ</string>
<string name="preference_category_appearance">অবয়ব</string>
<string name="preference_category_general">সাধারণ</string>
@ -89,9 +98,11 @@
<string name="logging_in_message">অনুগ্রহ করে অপেক্ষা করুন…</string>
<string name="updating_caption_title">ক্যাপশন ও বিবরণ হালনাগাদ করা হচ্ছে</string>
<string name="updating_caption_message">অনুগ্রহ করে অপেক্ষা করুন…</string>
<string name="login_success" fuzzy="true">প্রবেশ সফল!</string>
<string name="login_success">প্রবেশ সফল</string>
<string name="login_failed">প্রবেশ ব্যর্থ!</string>
<string name="upload_failed">ফাইল পাওয়া যায়নি। আরেকটি ফাইল চেষ্টা করুন।</string>
<string name="retry_limit_reached">সর্বোচ্চ পুনচেষ্টা করার সীমা পেরিয়ে গেছে! অনুগ্রহ করে আপলোডটি বাতিল করে আবার চেষ্টা করুন।</string>
<string name="unrestricted_battery_mode">ব্যাটারি অপ্টিমাইজেশন বন্ধ করবেন?</string>
<string name="authentication_failed">প্রমাণীকরণ ব্যর্থ হয়েছে। অনুগ্রহ করে আবার প্রবেশ করুন।</string>
<string name="uploading_started">আপলোড আরম্ভ হয়েছে!</string>
<string name="uploading_queued">আপলোড সারিবদ্ধ করা হয়েছে (সীমিত সংযোগ মোড সক্রিয় করা)</string>
@ -113,6 +124,8 @@
<string name="menu_from_camera">ছবি তুলুন</string>
<string name="menu_nearby">কাছাকাছি</string>
<string name="provider_contributions">আমার আপলোড</string>
<string name="menu_copy_link">লিংক কপি করুন</string>
<string name="menu_link_copied">লিঙ্কটি ক্লিপবোর্ডে কপি করা হয়েছে।</string>
<string name="menu_share">বণ্টন</string>
<string name="menu_view_file_page">ফাইলের পাতাটি দেখুন</string>
<string name="share_title_hint">ক্যাপশন (আবশ্যক)</string>
@ -123,7 +136,8 @@
<string name="login_failed_throttled">খুব বেশি অসফল প্রচেষ্টা। অনুগ্রহ করে কয়েক মিনিট পরে আবারও চেষ্টা করুন।</string>
<string name="login_failed_blocked">দুঃখিত, এই ব্যবহারকারীকে কমন্সে বাধা দেয়া হয়েছে</string>
<string name="login_failed_2fa_needed">আপনাকে অবশ্যই আপনার দু\'স্তরের সত্যায়নকরণ কোড দিতে হবে।</string>
<string name="login_failed_generic" fuzzy="true">প্রবেশ ব্যর্থ</string>
<string name="login_failed_email_auth_needed">আপনার ইমেল ঠিকানায় একটি লগইন যাচাইকরণ কোড পাঠানো হয়েছে। লগ ইন করার জন্য অনুগ্রহ করে কোডটি প্রদান করুন।</string>
<string name="login_failed_generic">প্রবেশ ব্যর্থ</string>
<string name="share_upload_button">আপলোড</string>
<string name="multiple_share_base_title">এই সেটের নাম</string>
<string name="provider_modifications">পরিবর্তনসমূহ</string>
@ -131,6 +145,7 @@
<string name="categories_search_text_hint">বিষয়শ্রেণী অনুসন্ধান</string>
<string name="depicts_search_text_hint">আপনার মিডিয়া চিত্রিত আইটেমগুলি অনুসন্ধান করুন (পর্বত, তাজমহল, ইত্যাদি)</string>
<string name="menu_save_categories">সংরক্ষণ</string>
<string name="menu_overflow_desc">ওভারফ্লো মেনু</string>
<string name="refresh_button">পুনঃসতেজ</string>
<string name="display_list_button">তালিকা</string>
<string name="contributions_subtitle_zero">(আপলোড করেন নি)</string>
@ -223,6 +238,7 @@
<string name="become_a_tester_title">বিটা টেস্টার হোন</string>
<string name="become_a_tester_description">গুগল প্লেতে আমাদের বেটা চ্যানেলে যুক্ত হন! এতে নতুন বৈশিষ্ট্যের পাশাপাশি পুরানো বাগগুলো\'র সংশোধিত রুপ সবার আগে ব্যবহারের সুযোগ পাবেন</string>
<string name="_2fa_code">2FA কোড</string>
<string name="email_auth_code">ইমেল যাচাইকরণ কোড</string>
<string name="logout_verification">আপনি কি সত্যিই প্রস্থান করতে চান?</string>
<string name="mediaimage_failed">মিডিয়া চিত্র ব্যর্থ হয়েছে</string>
<string name="no_subcategory_found">কোন উপবিষয়শ্রেনী পাওয়া যায় নি।</string>
@ -243,6 +259,7 @@
<string name="navigation_item_about">সম্পর্কে</string>
<string name="navigation_item_settings">সেটিং</string>
<string name="navigation_item_feedback">প্রতিক্রিয়া</string>
<string name="navigation_item_feedback_github">GitHub এর মাধ্যমে প্রতিক্রিয়া</string>
<string name="navigation_item_logout">প্রস্থান</string>
<string name="navigation_item_info">ভূমিকা</string>
<string name="navigation_item_notification">বিজ্ঞপ্তি</string>
@ -252,6 +269,7 @@
<string name="nearby_info_menu_wikidata_article">উইকিউপাত্ত আইটেম</string>
<string name="nearby_info_menu_wikipedia_article">উইকিপিডিয়া নিবন্ধ</string>
<string name="description_info">যতটা সম্ভব মিডিয়াটি বর্ণনা করুন: এটি কোথায় ধারণ করা হয়েছিল? এটি কি প্রদর্শন করে? এটির প্রসঙ্গ কি? ধারণকৃত বস্তু অথবা ব্যক্তির বর্ণনা করুন। সহজে অনুমান করা যায়না সেরকম তথ্য উদঘাটন করুন, উদাহরণস্বরূপ, যদি ল্যান্ডস্কেপ হয় তাহলে দিবসকালের সময় দিন।</string>
<string name="caption_info">দয়া করে ছবির একটি সংক্ষিপ্ত বিবরণ লিখুন। প্রথম ক্যাপশনটি ছবির শিরোনাম হিসেবে ব্যবহার করা হবে। ২৫৫ অক্ষরের মধ্যে সীমাবদ্ধ।</string>
<string name="upload_problem_exist">এই চিত্রের সম্ভাব্য সমস্যাগুলি:</string>
<string name="upload_problem_image_dark">চিত্রটি খুব অন্ধকারযুক্ত।</string>
<string name="upload_problem_image_blurry">চিত্রটি অস্পষ্ট।</string>
@ -275,12 +293,13 @@
<string name="nominated_see_more">বিশদের জন্য ওয়েবপৃষ্ঠা দেখুন</string>
<string name="skip_login">এড়ান</string>
<string name="navigation_item_login">প্রবেশ করুন</string>
<string name="skip_login_title" fuzzy="true">আপনি কি সত্যিই প্রবেশকরণ এড়িয়ে যেতে চান?</string>
<string name="skip_login_message" fuzzy="true">ভবিষ্যতে চিত্র আপলোড করতে চাইলে আপনাকে প্রবেশ করতে হবে।</string>
<string name="skip_login_title">আপনি কি সত্যিই লগ-ইন এড়িয়ে যেতে চান?</string>
<string name="skip_login_message">ভবিষ্যতে চিত্র আপলোড করতে চাইলে আপনাকে প্রবেশ করতে হবে।</string>
<string name="login_alert_message">এই সুবিধাটি ব্যাবহার করতে প্রবেশ করুন</string>
<string name="copy_wikicode">উইকিপাঠ্যটি ক্লিপবোর্ডে অনুলিপি করুন</string>
<string name="wikicode_copied">উইকিপাঠ্যটি ক্লিপবোর্ডে অনুলিপি করা হয়েছে</string>
<string name="nearby_location_not_available">কাছাকাছি সঠিকভাবে কাজ করছে না, অবস্থান উপলব্ধ নয়।</string>
<string name="nearby_showing_pins_offline">ইন্টারনেট অনুপলব্ধ। শুধুমাত্র ক্যাশে করা স্থানগুলো দেখানো হচ্ছে।</string>
<string name="location_permission_rationale_nearby">কাছাকাছি স্থানসমূহের একটি তালিকা প্রদর্শন করতে অনুমতি প্রয়োজন</string>
<string name="nearby_directions">দিকনির্দেশ</string>
<string name="nearby_wikidata">উইকিউপাত্ত</string>
@ -334,19 +353,26 @@
<string name="quiz_screenshot_question">এই স্ক্রিনশটটি কি আপলোড করা ঠিক হয়েছে?</string>
<string name="share_app_title">অ্যাপ শেয়ার করুন</string>
<string name="rotate">ঘোরান</string>
<string name="error_fetching_nearby_places" fuzzy="true">কাছাকাছি স্থানগুলি আনতে ত্রুটি।</string>
<string name="error_fetching_nearby_places">কাছাকাছি জায়গাগুলি লোড করা যায়নি</string>
<string name="no_pictures_in_this_area">এই এলাকার কোনও ছবি নেই</string>
<string name="no_nearby_places_around">আশেপাশে কোনো এলাকা পাওয়া যায়নি</string>
<string name="error_fetching_nearby_monuments">আশেপাশের স্মৃতিস্তম্ভগুলি আনায়নে ত্রুটি৷</string>
<string name="no_recent_searches">কোনও সাম্প্রতিক অনুসন্ধান নেই</string>
<string name="delete_recent_searches_dialog">আপনি কি নিশ্চিত যে আপনি আপনার অনুসন্ধান ইতিহাস মুছে ফেলতে চান?</string>
<string name="cancel_upload_dialog">আপনি কি নিশ্চিত যে আপনি এই আপলোডটি বাতিল করতে চান?</string>
<string name="delete_search_dialog">আপনি কি এই অনুসন্ধানটি মুছে ফেলতে চান?</string>
<string name="search_history_deleted">অনুসন্ধানের ইতিহাস মুছে ফেলা হয়েছে</string>
<string name="nominate_delete">অপসারণের জন্য মনোনীত করুন</string>
<string name="delete">অপসারণ</string>
<string name="Achievements">কৃতিত্বগুলি</string>
<string name="Profile">প্রোফাইল</string>
<string name="badges">ব্যাজ</string>
<string name="statistics">পরিসংখ্যান</string>
<string name="statistics_thanks">ধন্যবাদ পেয়েছেন</string>
<string name="statistics_featured">নির্বাচিত ছবি</string>
<string name="level" fuzzy="true">স্তর</string>
<string name="statistics_wikidata_edits">\"কাছাকাছি স্থান\" এর মাধ্যমে ছবি</string>
<string name="level">স্তর %d</string>
<string name="profileLevel">%s (স্তর %s )</string>
<string name="images_uploaded">আপলোডকৃত চিত্র</string>
<string name="image_reverts">ছবিগুলো প্রত্যাবর্তন করা হয়নি</string>
<string name="images_used_by_wiki">ব্যবহৃত ছবি</string>

View file

@ -256,7 +256,7 @@
<string name="navigation_drawer_close">Κλείσιμο</string>
<string name="navigation_item_home">Αρχική σελίδα</string>
<string name="navigation_item_upload">Μεταφόρτωση αρχείου</string>
<string name="navigation_item_nearby">Κοντά σας</string>
<string name="navigation_item_nearby">Κοντινά</string>
<string name="navigation_item_about">Σχετικά</string>
<string name="navigation_item_settings">Ρυθμίσεις</string>
<string name="navigation_item_feedback">Ανατροφοδότηση</string>
@ -803,6 +803,7 @@
<string name="talk">Συζήτηση</string>
<string name="write_something_about_the_item">Γράψτε κάτι για το αντικείμενο \'%1$s\'. Θα είναι δημόσια ορατό.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">Το \'%1$s\' δεν υφίσταται πλέον, καμία φωτογραφία δεν μπορεί να εξαχθεί.</string>
<string name="is_at_a_different_place_wikidata">Το \'%1$s\' βρίσκεται σε διαφορετικό μέρος.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">Το \'%1$s\' βρίσκεται σε διαφορετική θέση. Παρακαλούμε προσδιορίστε τη σωστή θέση παρακαλώ, και αν είναι εφικτό, γράψτε το σωστό γεωγραφικό πλάτος και μήκος.</string>
<string name="other_problem_or_information_please_explain_below">Άλλο πρόβλημα ή πληροφορίες (παρακαλούμε εξηγήστε παρακάτω).</string>
<string name="feedback_destination_note">Τα σχόλιά σας δημοσιεύονται στην ακόλουθη σελίδα wiki: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Εφαρμογή για κινητά/Σχόλια&lt;/a&gt;</string>
@ -828,4 +829,9 @@
<string name="account">Λογαριασμός</string>
<string name="caption">Λεζάντα</string>
<string name="caption_copied_to_clipboard">Η λεζάντα αντιγράφηκε στο πρόχειρο</string>
<string name="congratulations_all_pictures_in_this_album_have_been_either_uploaded_or_marked_as_not_for_upload">Συγχαρητήρια, όλες οι φωτογραφίες σε αυτό το άλμπουμ έχουν είτε μεταφορτωθεί είτε επισημανθεί για μη μεταφόρτωση.</string>
<string name="show_in_explore">Εμφάνιση στην Εξερεύνηση</string>
<string name="show_in_nearby">Εμφάνιση στα Κοντινά</string>
<string name="image_tag_line_created_and_uploaded_by">Δημιουργήθηκε και μεταφορτώθηκε από: %1$s</string>
<string name="image_tag_line_created_by_and_uploaded_by">Δημιουργήθηκε από %1$s και μεταφορτώθηκε από %2$s</string>
</resources>

View file

@ -30,6 +30,7 @@
* Jduranboger
* Jelou
* Johnny243
* JorgeElias2302
* Josuert
* Juanman
* Keneth Urrutia
@ -152,6 +153,7 @@
<string name="menu_nearby">Cercanos</string>
<string name="provider_contributions">Mis subidas</string>
<string name="menu_copy_link">Copiar enlace</string>
<string name="menu_link_copied">El enlace ha sido copiado al portapapeles.</string>
<string name="menu_share">Compartir</string>
<string name="menu_view_file_page">Ver página del archivo</string>
<string name="share_title_hint">Leyenda (requerido)</string>
@ -162,6 +164,7 @@
<string name="login_failed_throttled">Demasiados intentos fallidos. Inténtalo de nuevo en unos minutos.</string>
<string name="login_failed_blocked">Lo sentimos, este usuario ha sido bloqueado en Commons</string>
<string name="login_failed_2fa_needed">Debe proporcionar su código de autenticación de dos factores.</string>
<string name="login_failed_email_auth_needed">Se ha enviado un código de verificación de inicio de sesión a tu correo electrónico. Indícalo para iniciar sesión.</string>
<string name="login_failed_generic">Falló el inicio de sesión</string>
<string name="share_upload_button">Subir</string>
<string name="multiple_share_base_title">Nombrar este conjunto</string>
@ -267,6 +270,7 @@
<string name="become_a_tester_title">Prueba la versión beta</string>
<string name="become_a_tester_description">Apúntate a nuestro canal beta en Google Play y obtén acceso a funcionalidades nuevas y correcciones de errores</string>
<string name="_2fa_code">Código de autenticación de 2 pasos</string>
<string name="email_auth_code">Código de verificación de correo electrónico</string>
<string name="logout_verification">¿Confirmas que quieres salir?</string>
<string name="mediaimage_failed">Falló la imagen de multimedia</string>
<string name="no_subcategory_found">No se encontró ninguna subcategoría</string>
@ -327,6 +331,7 @@
<string name="copy_wikicode">Copia el wikitexto al portapapeles</string>
<string name="wikicode_copied">El wikitexto fue copiado al portapapeles</string>
<string name="nearby_location_not_available">Cercanos no puede funcionar correctamente. La ubicación no está disponible.</string>
<string name="nearby_showing_pins_offline">Internet no disponible. Solo se muestran ubicaciones en caché.</string>
<string name="upload_location_access_denied">Acceso a la ubicación denegado. Configura tu ubicación manualmente para utilizar esta función.</string>
<string name="location_permission_rationale_nearby">Se necesita permiso para mostrar una lista de lugares cercanos</string>
<string name="location_permission_rationale_explore">Se necesita permiso para mostrar una lista de lugares cercanos</string>
@ -416,6 +421,7 @@
<string name="statistics_featured">Imágenes destacadas</string>
<string name="statistics_wikidata_edits">Imágenes vía \"Sitios Cercanos\"</string>
<string name="level">Nivel %d</string>
<string name="profileLevel">%s (Nivel %s)</string>
<string name="images_uploaded">Imágenes subidas</string>
<string name="image_reverts">Imágenes no revertidas</string>
<string name="images_used_by_wiki">Imágenes utilizadas</string>
@ -447,6 +453,7 @@
<string name="map_application_missing">No se encontró una aplicación de mapas compatible en tu dispositivo. Instala una para usar esta característica.</string>
<string name="title_page_bookmarks_pictures">Imágenes</string>
<string name="title_page_bookmarks_locations">Ubicaciones</string>
<string name="title_page_bookmarks_categories">Categorías</string>
<string name="menu_bookmark">Añadir o quitar de marcadores</string>
<string name="provider_bookmarks">Marcadores</string>
<string name="bookmark_empty">No has añadido ningún marcador</string>
@ -827,6 +834,7 @@
<string name="talk">Discusión</string>
<string name="write_something_about_the_item">Escriba algo sobre el elemento \'%1$s\'. Será visible públicamente.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\' %1$s \' ya no existe, nunca se podrá tomar ninguna fotografía de él.</string>
<string name="is_at_a_different_place_wikidata">\'%1$s\' está en un lugar diferente.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\' %1$s \' está en un lugar diferente. Especifique el lugar correcto a continuación y, si es posible, escriba la latitud y longitud correctas.</string>
<string name="other_problem_or_information_please_explain_below">Otro problema o información (por favor explique a continuación).</string>
<string name="feedback_destination_note">Sus comentarios se publicarán en la siguiente página wiki: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile_app/Feedback&lt;/a&gt;</string>
@ -848,4 +856,21 @@
<string name="red_pin">Este lugar aún no tiene foto, ¡ve y toma una!</string>
<string name="green_pin">Este lugar ya tiene una foto.</string>
<string name="grey_pin">Ahora comprobando si este lugar tiene una foto.</string>
<string name="error_while_loading">Error al cargar</string>
<string name="no_usages_found">No se encontraron usos</string>
<string name="usages_on_commons_heading">Commons</string>
<string name="usages_on_other_wikis_heading">Otras wikis</string>
<string name="file_usages_container_heading">Usos de archivos</string>
<string name="title_activity_single_web_view">Actividad de vista web única</string>
<string name="account">Cuenta</string>
<string name="vanish_account">Desaparecer cuenta</string>
<string name="account_vanish_request_confirm_title">Advertencia sobre la desaparición de la cuenta</string>
<string name="account_vanish_request_confirm">La desaparición de una cuenta en Wikimedia Commons es un &lt;b&gt;último recurso&lt;/b&gt; y &lt;b&gt;solo debe usarse cuando desee dejar de editar para siempre y también para ocultar la mayor cantidad posible de sus asociaciones pasadas.&lt;br/&gt;&lt;br/&gt;La desaparición de una cuenta en Wikimedia Commons se realiza cambiando el nombre de la cuenta para que otros no puedan reconocer sus contribuciones en un proceso llamado desaparición de la cuenta. &lt;b&gt;La desaparición de la cuenta no garantiza el anonimato completo ni elimina las contribuciones a los proyectos&lt;/b&gt;.</string>
<string name="caption">Leyenda</string>
<string name="caption_copied_to_clipboard">Leyenda copiado al portapapeles</string>
<string name="congratulations_all_pictures_in_this_album_have_been_either_uploaded_or_marked_as_not_for_upload">Felicitaciones, todas las imágenes de este álbum han sido cargadas o marcadas como no para cargar.</string>
<string name="show_in_explore">Mostrar en Explorar</string>
<string name="show_in_nearby">Mostrar en las cercanías</string>
<string name="image_tag_line_created_and_uploaded_by">Creado y cargado por: %1$s</string>
<string name="image_tag_line_created_by_and_uploaded_by">Creado por %1$s y cargado por %2$s</string>
</resources>

View file

@ -108,6 +108,7 @@
<string name="menu_from_camera">फ़ोटो लें</string>
<string name="menu_nearby">आसपास</string>
<string name="provider_contributions">मेरे अपलोड</string>
<string name="menu_copy_link">लिंक कॉपी करें</string>
<string name="menu_share">साझा करें</string>
<string name="share_title_hint" fuzzy="true">शीर्षक (आवश्यक)</string>
<string name="share_description_hint">विवरण</string>
@ -125,7 +126,7 @@
<string name="menu_save_categories">सहेजें</string>
<string name="refresh_button">ताजा करें</string>
<string name="display_list_button">सूची</string>
<string name="contributions_subtitle_zero" fuzzy="true">अभी तक कोई अपलोड नहीं</string>
<string name="contributions_subtitle_zero">(अभी तक कोई अपलोड नहीं)</string>
<string name="categories_not_found">%1$s से कोई श्रेणी मेल नहीं खाती</string>
<string name="categories_skip_explanation">विकिमीडिया कॉमन्स पर अपनी छवियों को अधिक खोजने योग्य बनाने के लिए श्रेणियां जोड़ें|\nश्रेणियां जोड़ने के लिए टाइप करना प्रारंभ करें|</string>
<string name="categories_activity_title">श्रेणियाँ</string>
@ -179,7 +180,7 @@
<string name="welcome_copyright_subtext">इंटरनेट से मिली कोई कॉपीराइट सामग्री के साथ साथ पोस्टर, पुस्तक के खड्डे आदि को भी अपलोड करने से बचें।</string>
<string name="welcome_final_text">क्या आपको लगता है कि आप समझ गए?</string>
<string name="welcome_final_button_text">हाँ!</string>
<string name="welcome_help_button_text" fuzzy="true">&lt;u&gt;अधिक जानकारी&lt;/u&gt;</string>
<string name="welcome_help_button_text">अधिक जानकारी</string>
<string name="detail_panel_cats_label">श्रेणियाँ</string>
<string name="detail_panel_cats_loading">लोड हो रहा है…</string>
<string name="detail_panel_cats_none">कुछ चयनित नहीं</string>
@ -193,7 +194,9 @@
<string name="upload">अपलोड करें</string>
<string name="yes">हाँ</string>
<string name="no">नहीं</string>
<string name="media_detail_caption">कैप्शन</string>
<string name="media_detail_title">शीर्षक</string>
<string name="media_detail_depiction">चित्रण</string>
<string name="media_detail_description">विवरण</string>
<string name="media_detail_discussion">चर्चा</string>
<string name="media_detail_author">लेखक</string>
@ -258,11 +261,11 @@
<string name="wikicode_copied">विकिटेक्सट क्लिपबोर्ड पर कॉपी किया जा चुका है</string>
<string name="nearby_location_not_available">स्थान उपलब्ध नहीं है।</string>
<string name="location_permission_rationale_nearby">आसपास के स्थान दिखाने के लिए अनुमति चाहिए</string>
<string name="nearby_directions" fuzzy="true">दिशा-निर्देश</string>
<string name="nearby_wikidata" fuzzy="true">विकीडाटा</string>
<string name="nearby_wikipedia" fuzzy="true">विकीपीडिया</string>
<string name="nearby_directions">दिशा-निर्देश</string>
<string name="nearby_wikidata">विकीडाटा</string>
<string name="nearby_wikipedia">विकीपीडिया</string>
<string name="nearby_commons">कॉमन्स</string>
<string name="about_rate_us" fuzzy="true">&lt;u&gt;हमें रेट करें&lt;/u&gt;</string>
<string name="about_rate_us">हमें रेट करें</string>
<string name="about_faq">अक्सर पूछे जाने वाले प्रश्न</string>
<string name="welcome_skip_button">प्रशिक्षण छोड़ें</string>
<string name="no_internet">इंटरनेट उपलब्ध नहीं</string>
@ -276,6 +279,7 @@
<string name="no_images_found">कोई चित्र नहीं मिला!</string>
<string name="error_loading_images">चित्र अपलोड करते समय त्रुटि उत्पन्न हुई।</string>
<string name="image_uploaded_by">अपलोड: %1$s</string>
<string name="block_notification_title">अवरोधित</string>
<string name="block_notification">कॉमन्स पर सम्पादन से आप अवरोधित हो चुके हैं</string>
<string name="app_widget_heading">आज का चित्र</string>
<string name="menu_search_button">खोजें</string>
@ -286,6 +290,7 @@
<string name="error_loading_categories">श्रेणी लोड करते समय त्रुटि उत्पन्न हुई।</string>
<string name="search_tab_title_media">मीडिया</string>
<string name="search_tab_title_categories">श्रेणियाँ</string>
<string name="search_tab_title_depictions">आयटम</string>
<string name="explore_tab_title_featured">निर्वाचित</string>
<string name="explore_tab_title_map">नक्शा</string>
<string name="successful_wikidata_edit" fuzzy="true">चित्र सफ़लतापूर्वक विकिडाटा के %1$s पर सफलतापूर्वक जोड़ दिया गया है।</string>
@ -312,10 +317,12 @@
<string name="nominate_delete">हटाने के लिये नामांकन करें</string>
<string name="delete">हटाएँ</string>
<string name="Achievements">उपलब्धियाँ</string>
<string name="Profile">प्रोफ़ाइल</string>
<string name="statistics">सांख्यिकी</string>
<string name="statistics_thanks">धन्यवाद प्राप्त किया</string>
<string name="statistics_featured">निर्वाचित चित्र</string>
<string name="level">स्तर %d</string>
<string name="profileLevel">%s (स्तर %s )</string>
<string name="images_uploaded">चित्र अपलोड हुआ</string>
<string name="image_reverts">चित्रों को वापस नहीं किया गया</string>
<string name="images_used_by_wiki">उपयोग हुए चित्र</string>
@ -353,7 +360,10 @@
<string name="ends_on">खत्म होगा:</string>
<string name="display_campaigns">दृश्य अभियान</string>
<string name="display_campaigns_explanation" fuzzy="true">वर्तमान में चल रहे अभियानों को जानने के लिये यहाँ दबायें</string>
<string name="option_allow">अनुमति दें</string>
<string name="option_dismiss">रद्द करें</string>
<string name="error_processing_image">छवि संसाधित करते समय त्रुटि आई। कृपया पुन: प्रयास करें!</string>
<string name="nominate_for_deletion_done">पूर्ण हुआ</string>
<string name="no_image">कोई चित्र उपयोग नहीं हुआ</string>
<string name="no_image_reverted">कोई चित्र वापस नहीं लाया</string>
<string name="no_image_uploaded">कोई चित्र अपलोड नहीं किया</string>

View file

@ -112,6 +112,7 @@
<string name="login_failed_throttled">Troppo de tentativas fallite. Per favor reproba in alcun minutas.</string>
<string name="login_failed_blocked">Iste usator ha essite blocate sur Commons</string>
<string name="login_failed_2fa_needed">Tu debe fornir tu codice de authentication bifactorial.</string>
<string name="login_failed_email_auth_needed">Un codice de verification de session ha essite inviate a tu adresse de e-mail. Per favor insere iste codice pro aperir session.</string>
<string name="login_failed_generic">Apertura de session fallite</string>
<string name="share_upload_button">Incargar</string>
<string name="multiple_share_base_title">Nomine de iste insimul</string>
@ -212,6 +213,7 @@
<string name="become_a_tester_title">Devenir testator beta</string>
<string name="become_a_tester_description">Abona te a nostre canal beta sur Google Play e sia le prime a ganiar accesso a nove functiones e correctiones de anomalias</string>
<string name="_2fa_code">Codice 2FA</string>
<string name="email_auth_code">Codice de verification in e-mail</string>
<string name="logout_verification">Vole tu vermente clauder session?</string>
<string name="mediaimage_failed">Imagine multimedial fallite</string>
<string name="no_subcategory_found">Necun subcategoria trovate</string>
@ -775,6 +777,7 @@
<string name="talk">Discussion</string>
<string name="write_something_about_the_item">Scribe qualcosa sur le elemento %1$s. Isto essera visibile publicamente.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">%1$s non existe plus, necun imagine pote jammais esser prendite de illo.</string>
<string name="is_at_a_different_place_wikidata">%1$s se trova in un altere loco.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">%1$s es in un altere loco. Per favor specifica le loco correcte hic infra, e si possibile, indica le latitude e longitude correcte.</string>
<string name="other_problem_or_information_please_explain_below">Altere problema o information (per favor explica hic infra).</string>
<string name="feedback_destination_note">Tu retroaction apparera sur le sequente pagina wiki: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>
@ -801,4 +804,16 @@
<string name="usages_on_commons_heading">Commons</string>
<string name="usages_on_other_wikis_heading">Altere wikis</string>
<string name="file_usages_container_heading">Usos del file</string>
<string name="title_activity_single_web_view">Activitate de singule visita web</string>
<string name="account">Conto</string>
<string name="vanish_account">Facer disparer le conto</string>
<string name="account_vanish_request_confirm_title">Advertimento concernente le disparition del conto</string>
<string name="account_vanish_request_confirm">Le disparition es un &lt;b&gt;ultime recurso&lt;/b&gt; e debe &lt;b&gt;solmente esser usate quando tu vole cessar de modificar pro sempre&lt;/b&gt; e celar le maximo possibile de tu associationes anterior.&lt;br/&gt;&lt;br/&gt;Le deletion del conto sur Wikipedia se effectua cambiante tu nomine de conto de maniera que alteres non pote recognoscer tu contributiones. Iste processo se appella le disparition del conto. &lt;b&gt;Le disparition non garanti le anonymitate complete ni remove contributiones al projectos.&lt;/b&gt;</string>
<string name="caption">Legenda</string>
<string name="caption_copied_to_clipboard">Legenda copiate al area de transferentia</string>
<string name="congratulations_all_pictures_in_this_album_have_been_either_uploaded_or_marked_as_not_for_upload">Felicitationes, tote le imagines in iste album ha essite incargate o marcate como non incargabile.</string>
<string name="show_in_explore">Monstrar in Explorar</string>
<string name="show_in_nearby">Monstrar in A proximitate</string>
<string name="image_tag_line_created_and_uploaded_by">Create e incargate per: %1$s</string>
<string name="image_tag_line_created_by_and_uploaded_by">Create per %1$s e incargate per %2$s</string>
</resources>

View file

@ -441,6 +441,8 @@
<string name="open_document_photo_picker_title">Uzez selektilo di fotografuri segun dokumenti</string>
<string name="open_document_photo_picker_explanation">La nova funciono \'\'Android photo picker\'\' povas perdar informo pri lokizo. Kapabligez ol, se vu semblas uzar ol.</string>
<string name="location_loss_warning">Deskapabliganta ol povos deskuplar la nova funciono \'\'Android photo picker\'\'. Posible perdos informo pri lokizo.</string>
<string name="this_function_needs_network_connection">Ca funciono bezonas ligilo ad interreto. Verifikez vua ajusti pri konekti.</string>
<string name="error_processing_image">Eventis eroro dum procesado dil imajo. Voluntez probar ol itere!</string>
<string name="getting_edit_token">Kaptanta \'\'token\'\' por redaktar.</string>
<string name="check_category_adding_template">Adjuntanta shablono por verifikar kategorio</string>
<string name="check_category_notification_title">Demandanta verifiko di kategorio por %1$s</string>
@ -461,6 +463,7 @@
<string name="review_spam">Ka to apartenas al skopo dil projeto?</string>
<string name="review_thanks">Ka vu deziras dankar la kontributero?</string>
<string name="review_spam_explanation">Kliktez NO por indikar ca imajo por efaco, se ol ne havas irga utileso.</string>
<string name="review_copyright_explanation">Logotipi*, skreno-kopiuri, afishi pri cinematografuri ofte esas kopiuro-violaci.\nKliktez NO por indikar ca pagino por efaco</string>
<string name="review_thanks_explanation">Vua opiniono stimulos %1$s</string>
<string name="review_no_category">Ho, to ne mem havas kategorio!</string>
<string name="review_category_explanation">Ca imajo havas %1$s kategorii.</string>
@ -500,11 +503,14 @@
<string name="exif_tag_name_serialNumbers">Serio-nombro</string>
<string name="exif_tag_name_software">Software</string>
<string name="media_location_permission_denied">Aceso ad enmagazinigo-moyeno ne permisita</string>
<string name="add_location_manually">Posible ni ne povos obtenar automatale datumi pri lokizi dil imaji quin vu sendis. Voluntez furnisar sata lokizo di irga fotografuro, ante sendar ol.</string>
<string name="share_text">Sendez fotografuri direte de vua smartfono a Wikimedia Commons. Descharjez l\'\'\'app\'\' nun: %1$s</string>
<string name="share_via">Partigar utensilo \'\'app\'\' per...</string>
<string name="image_info">Informo pri imajo</string>
<string name="no_categories_found">Nula kategorio trovesis</string>
<string name="no_depiction_found">Nula reprezenturi trovita</string>
<string name="upload_cancelled">Kargajo di arkivo cesis</string>
<string name="previous_image_title_description_not_found">Ne existas datumo pri la titulo o deskripto dil antea imajo</string>
<string name="dialog_box_text_nomination">Pro quo %1$s devas efacesar?</string>
<string name="review_is_uploaded_by">%1$s sendesis da: %2$s</string>
<string name="default_description_language">implicita deskripto-linguo</string>
@ -580,9 +586,16 @@
<string name="theme_default_name">Sequar sistemo</string>
<string name="theme_dark_name">Koloro obskura</string>
<string name="theme_light_name">Koloro klara</string>
<string name="cannot_open_location_settings">Faliis apartar ajusti pri lokizo. Voluntez informar la lokizo manuale</string>
<string name="recommend_high_accuracy_mode">Por plu bona rezulti, selektez modo \"granda exakteso\" (\'\'High Accuracy\'\').</string>
<string name="ask_to_turn_location_on">Kad montrar lokizo?</string>
<string name="ask_to_turn_location_on_text">Voluntez ajustar l\'utensilo pri lokizo, por ke l\'\'\'app\'\' montrez vua nuna lokizo</string>
<string name="nearby_needs_location">La funciono \'apud\' (\'\'Nearby\'\') bezonas kapabliko di lokizo, por ke ol funcionez bone</string>
<string name="explore_map_needs_location">La mapo pri lokizo bezonas uzo-permiso, por montrar vicina imaji</string>
<string name="upload_map_location_access">Vu mustos permisar lokizo-agnosko, por ajustar automatale la lokizo.</string>
<string name="use_location_from_similar_image">Ka vu fotografis ca du imaji an la sama loko? Ka vu deziras uzar latitudo/longitudo di fotografuro addextre?</string>
<string name="load_more">Charjez pluse</string>
<string name="nearby_no_results">Ne trovis loki, voluntez chajar vua kriterii pri sercho.</string>
<string name="todo_improve">Plubonigi propozata:</string>
<string name="missing_category">- Adjuntez kategorii a ca imajo, por faciligar lua uzado.</string>
<string name="missing_article">- Adjuntez ca imajo ad artiklo asociita de Wikipedio, qua havas nula imajo.</string>
@ -593,6 +606,9 @@
<string name="wikipedia_instructions_step_1">1. Uzez la sequanta wikitexto:</string>
<string name="wikipedia_instructions_step_2">Kliktanta \"konfirmar\" (\'\'Confirm\'\') apertos l\'artiklo che Wikipedio</string>
<string name="wikipedia_instructions_step_3">3. Trovez adequata fako dil artiklo por inkluzar vua imajo</string>
<string name="wikipedia_instructions_step_4">4. Kliktez l\'ikono Editar (qua semblas krayono) por ta sesiono.</string>
<string name="wikipedia_instructions_step_5">5. Kopiez la texto wiki che adequata loko.</string>
<string name="wikipedia_instructions_step_6">6. Se bezonata, redaktez la texto wiki por adequata pozado. Por plusa informo, videz &lt;a href=\"https://en.wikipedia.org/wiki/Wikipedia:Manual_of_Style/Images#How_to_place_an_image\"&gt;hike&lt;/a&gt;.</string>
<string name="wikipedia_instructions_step_7">Publikigar l\'artiklo</string>
<string name="copy_wikicode_to_clipboard">Kopiar wikikodexo a transfero-areo di la komputatoro</string>
<string name="pause">pauzar</string>
@ -626,17 +642,23 @@
<string name="pausing_upload">Pauzanta sendajo...</string>
<string name="cancelling_upload">Nuliganta sendajo...</string>
<string name="cancel_upload">Cesar kargajo</string>
<string name="limited_connection_is_on">Kapabligesis por uzar limitizita konekti.</string>
<string name="media_details_tooltip">Voluntez skribar kurta titulo deskriptanta quon vua imajo montras. En la deskripto, explikez pro quo la fotografuro esas interesanta, tipala o rara, ed explikez la kuntexto, videbla o ne. Skriptez tan exakta kam posibla.</string>
<string name="depicts_step_title">Montras</string>
<string name="license_step_title">Licencizo di \'\'media\'\'</string>
<string name="media_detail_step_title">Detali pri \'\'media\'\'</string>
<string name="menu_view_category_page">Vidar kategorio-pagino</string>
<string name="menu_view_item_page">Vidar pagino dil arkivo</string>
<string name="remove">Removar titulo e deskripto</string>
<string name="read_help_link">Lektez pluse</string>
<string name="media_detail_in_all_languages">En omna idiomi</string>
<string name="choose_a_location">Selektez lokizo</string>
<string name="pan_and_zoom_to_adjust">Facez panoramo e proximigez por ajustar</string>
<string name="select_location_location_picker">Selektar lokizo</string>
<string name="show_in_map_app">Montrar en l\'utensilo \'\'app\'\' di mapo</string>
<string name="modify_location">Aktualigar lokizo</string>
<string name="location_picker_image_view">Vidado dil imajo de la selektilo di lokizo</string>
<string name="location_picker_image_view_shadow">L\'ombro di la vidado dil imajo de la selektilo di lokizo</string>
<string name="image_location">Lokizo dil imajo</string>
<string name="check_whether_location_is_correct">Verifikez se la lokizo esas korekta</string>
<string name="label">Etiketo</string>

View file

@ -4,6 +4,7 @@
* Albe Albe 460
* Albe Albe460
* Ale.salmo
* Antonino Faro
* Beta16
* Black Sky83
* Champ0999
@ -21,6 +22,7 @@
* Senpremì
* Una giornata uggiosa '94
* Valerio Bozzolan
* Wheelygay
* Wim b
-->
<resources>
@ -34,7 +36,7 @@
<string name="add_new_contribution">Aggiungi nuovo contributo</string>
<string name="add_contribution_from_camera">Aggiungi contributo dalla fotocamera</string>
<string name="add_contribution_from_photos">Aggiungi contributo da Foto</string>
<string name="add_contribution_from_contributions_gallery">Aggiungi contributo dalla galleria dei contributi precedenti</string>
<string name="add_contribution_from_contributions_gallery">Aggiungi un contributo dalla galleria dei contributi precedenti</string>
<string name="show_captions">Didascalie</string>
<string name="row_item_language_description">Descrizione della lingua</string>
<string name="row_item_caption">Didascalia</string>
@ -86,7 +88,7 @@
<string name="username">Nome utente</string>
<string name="password">Password</string>
<string name="login_credential">Accedi alla tua utenza in Commons Beta</string>
<string name="login">Entra</string>
<string name="login">Accedi</string>
<string name="forgot_password">Password dimenticata?</string>
<string name="signup">Registrati</string>
<string name="logging_in_title">Accesso in corso</string>
@ -103,7 +105,7 @@
<string name="uploading_started">Caricamento iniziato!</string>
<string name="uploading_queued">Caricamento in coda (attivata modalità di connessione limitata)</string>
<string name="upload_completed_notification_title">%1$s caricato!</string>
<string name="upload_completed_notification_text">Premi per vedere i tuoi caricamenti</string>
<string name="upload_completed_notification_text">Tocca per visualizzare il tuo caricamento</string>
<string name="upload_progress_notification_title_start">Caricamento file: %s</string>
<string name="upload_progress_notification_title_in_progress">Sto caricando %1$s</string>
<string name="upload_progress_notification_title_finishing">Terminato il caricamento di %1$s</string>
@ -301,6 +303,7 @@
<string name="nearby_showing_pins_offline">Internet non disponibile. Vengono mostrati solo i luoghi memorizzati nella cache.</string>
<string name="upload_location_access_denied">Accesso alla posizione negato. Impostala manualmente per utilizzare questa funzione.</string>
<string name="location_permission_rationale_nearby">È richiesta l\'autorizzazione per visualizzare un elenco di luoghi nelle vicinanze</string>
<string name="location_permission_rationale_explore">È richiesta l\'autorizzazione per visualizzare un elenco di luoghi nelle vicinanze</string>
<string name="nearby_directions">Indicazioni</string>
<string name="nearby_wikidata">Wikidata</string>
<string name="nearby_wikipedia">Wikipedia</string>
@ -457,6 +460,7 @@
<string name="option_dismiss">Nascondi</string>
<string name="in_app_camera_needs_location">Attiva l\'accesso alla posizione dalle Impostazioni e riprova. \n\nNota: il caricamento potrebbe non contenere la posizione se l\'app non è in grado di recuperarla dal dispositivo entro un breve intervallo.</string>
<string name="in_app_camera_location_permission_rationale">La fotocamera in-app necessita dell\'autorizzazione alla posizione per allegarla alle tue immagini nel caso in cui la posizione non sia disponibile in EXIF. Consenti all\'app di accedere alla tua posizione e riprova.\n\nNota: il caricamento potrebbe non avere la posizione se l\'app non è in grado di recuperare la posizione dal dispositivo entro un breve intervallo.</string>
<string name="in_app_camera_location_permission_denied">L\'app non registra la posizione insieme alle riprese a causa della mancanza di autorizzazione alla posizione</string>
<string name="in_app_camera_location_unavailable">L\'app non registra la posizione insieme alle foto in quanto il GPS è disattivato</string>
<string name="open_document_photo_picker_title">Utilizza il selettore di foto basato sui documenti</string>
<string name="open_document_photo_picker_explanation">Il nuovo selettore di foto di Android rischia di perdere le informazioni sulla posizione. Abilita se pensi di usarlo.</string>
@ -608,6 +612,7 @@
<string name="ask_to_turn_location_on">Accendere la localizzazione?</string>
<string name="ask_to_turn_location_on_text">Si prega di attivare i servizi di localizzazione dellapp per mostrare la tua posizione attuale</string>
<string name="nearby_needs_location">La funzione \'nelle vicinanze\' richiede l\'abilitazione della localizzazione per operare correttamente</string>
<string name="explore_map_needs_location">La mappa Esplora necessita dell\'autorizzazione di posizione per visualizzare le immagini vicine</string>
<string name="upload_map_location_access">È necessario fornire l\'autorizzazione alla posizione per impostare automaticamente la posizione.</string>
<string name="use_location_from_similar_image">Hai scattato queste immagini nello stesso posto? Vuoi usare la latitudine e la longitudine dell\'immagine indicate a destra?</string>
<string name="load_more">Caricane ancora</string>
@ -665,6 +670,7 @@
<string name="media_details_tooltip">Per favore scrivi una breve descrizione su cosa è ritratto nella tua immagine. Nella descrizione, indica che cosa rende l\'immagine interessante, tipica o rara, e spiega il contesto, visibile o non. Impiega il più possibile una terminologia esatta.</string>
<string name="depicts_tooltip">Trova e seleziona tutti i concetti rappresentati da questa immagine. Sii il più specifico possibile. Se l\'immagine ritrae più elementi, sceglili tutti entro limiti ragionevoli. Non scegliere etichette generali se sono disponibili etichette più specifiche.</string>
<string name="categories_tooltip">Si prega di selezionare le categorie appropriate. A differenza delle raffigurazioni, le categorie sono solo in inglese.</string>
<string name="license_tooltip">Commons rende le tue immagini riutilizzabili e adattabili da chiunque. Vuoi rinunciare a tutti i diritti? Vuoi che ti venga attribuita la paternità? Vuoi che gli adattamenti utilizzino la stessa licenza?</string>
<string name="depicts_step_title">Raffigura</string>
<string name="license_step_title">Licenza per il file</string>
<string name="media_detail_step_title">Dettagli sul file</string>
@ -721,6 +727,7 @@
<string name="add_location">Aggiungi luogo</string>
<string name="feedback_sharing_data_alert">Rimuovi da questa email tutte le informazioni che non sei disposto a condividere pubblicamente. Inoltre, tieni presente che il tuo indirizzo email con cui stai scrivendo, il nome e l\'immagine del profilo associati saranno visibili pubblicamente.</string>
<string name="explore_map_details">Dettagli</string>
<string name="achievements_unavailable_beta">La classifica è disponibile solo nella versione prod. Consulta la documentazione per gli sviluppatori.</string>
<string name="leaderboard_unavailable_beta">La classifica è disponibile solo nella versione prod. Consulta la documentazione per gli sviluppatori.</string>
<string name="copyright_popup">Per favore carica solo le foto che hai scattato tu. Gli autori che caricano immagini protette da copyright verranno bloccati. Questo vale anche per la versione beta. Grazie per aver testato l\'app!</string>
<string name="select_feedback_data_choice">Deseleziona tutte le informazioni che non ti senti a tuo agio nel condividere pubblicamente.</string>
@ -755,6 +762,7 @@
<string name="welcome_to_full_screen_mode_text">Benvenuto nella modalità di selezione a schermo intero</string>
<string name="full_screen_mode_zoom_info">Usa due dita per ingrandire e rimpicciolire.</string>
<string name="full_screen_mode_features_info">Scorri velocemente e a lungo per eseguire queste azioni: \n- Sinistra/destra: vai al precedente/successivo \n- Su: seleziona\n- Giù: contrassegna come da non caricare.</string>
<string name="set_up_avatar_toast_string">Per impostare il tuo avatar nella classifica, tocca \"Imposta come avatar\" nel menu a tre punti di qualsiasi immagine.</string>
<string name="similar_coordinate_description_auto_set">Le coordinate non sono esatte, ma la persona che ha caricato questa immagine pensa che siano abbastanza vicine.</string>
<string name="storage_permissions_denied">Autorizzazioni di archiviazione negate</string>
<string name="unable_to_share_upload_item">Impossibile condividere questo elemento</string>
@ -765,9 +773,14 @@
<string name="edit_image">Modifica Immagine</string>
<string name="edit_location">Modifica Posizione</string>
<string name="location_updated">Posizione aggiornata!</string>
<string name="remove_location">Rimuovi posizione</string>
<string name="remove_location_warning_title">Rimuovi avviso di posizione</string>
<string name="remove_location_warning_desc">La posizione rende le immagini più utili e facili da trovare. Vuoi davvero rimuovere la posizione da questa immagine?</string>
<string name="location_removed">Posizione rimossa!</string>
<string name="send_thanks_to_author">Ringrazia l\'autore</string>
<string name="error_sending_thanks">Errore nell\'invio di ringraziamenti all\'autore.</string>
<string name="invalid_login_message">Sessione scaduta. Accedi nuovamente.</string>
<string name="no_application_available_to_open_gpx_files">Nessuna applicazione disponibile per aprire i file GPX</string>
<string name="file_saved_successfully">File salvato con successo</string>
<string name="do_you_want_to_open_gpx_file">Vuoi aprire il file GPX?</string>
<string name="do_you_want_to_open_kml_file">Vuoi aprire il file KML?</string>
@ -781,23 +794,46 @@
</plurals>
<string name="multiple_files_depiction">Ricorda che tutte le immagini in un caricamento multiplo hanno le stesse categorie e descrizioni. Se le immagini non condividono descrizioni e categorie, esegui caricamenti separati.</string>
<string name="multiple_files_depiction_header">Osservazione sui caricamenti multipli</string>
<string name="nearby_wikitalk">Segnala un problema su questo elemento su Wikidata</string>
<string name="please_enter_some_comments">Inserisci dei commenti</string>
<string name="talk">Discussione</string>
<string name="write_something_about_the_item">Scrivi qualcosa su \' %1$s \'. Sarà visibile pubblicamente.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\'%1$s\' non esiste più, non potrà mai più essere fotografato.</string>
<string name="is_at_a_different_place_wikidata">\' %1$s \' si trova in un luogo diverso.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\' %1$s \' si trova in un luogo diverso. Specifica il luogo corretto qui sotto e, se possibile, scrivi latitudine e longitudine corrette.</string>
<string name="other_problem_or_information_please_explain_below">Altro problema o informazione (si prega di spiegare di seguito).</string>
<string name="feedback_destination_note">Il tuo feedback verrà pubblicato sulla seguente pagina wiki: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:App mobile/Feedback&lt;/a&gt;</string>
<string name="are_you_sure_that_you_want_cancel_all_the_uploads">Sei sicuro di voler cancellare tutti i caricamenti?</string>
<string name="cancelling_all_the_uploads">Cancellando tutti i caricamenti...</string>
<string name="uploads">Caricamenti</string>
<string name="pending">In attesa</string>
<string name="failed">Non riuscito</string>
<string name="could_not_load_place_data">Impossibile caricare i dati del luogo</string>
<string name="custom_selector_delete_folder">Cancella cartella</string>
<string name="custom_selector_confirm_deletion_title">Conferma cancellazione</string>
<string name="custom_selector_confirm_deletion_message">Sei sicuro di voler eliminare la cartella %1$s contenente elementi %2$d?</string>
<string name="custom_selector_delete">Cancella</string>
<string name="custom_selector_cancel">Annulla</string>
<string name="custom_selector_folder_deleted_success">Cartella %1$s cancellata correttamente</string>
<string name="custom_selector_folder_deleted_failure">Impossibile eliminare la cartella %1$s</string>
<string name="custom_selector_error_trashing_folder_contents">Impossibile eliminare i contenuti nella cartella: %1$s</string>
<string name="red_pin">Questo posto non ha ancora una foto, scattane una!</string>
<string name="green_pin">Questo posto ha già una foto.</string>
<string name="grey_pin">Ora controlliamo se questo posto ha una foto.</string>
<string name="error_while_loading">Errore durante il caricamento</string>
<string name="usages_on_commons_heading">Commons</string>
<string name="usages_on_other_wikis_heading">Altri wiki</string>
<string name="file_usages_container_heading">Utilizzi del file</string>
<string name="title_activity_single_web_view">SingleWebViewActivity</string>
<string name="account">Utenza</string>
<string name="vanish_account">Elimina l\'utenza</string>
<string name="account_vanish_request_confirm_title">Avviso di eliminazione dell\'utenza</string>
<string name="account_vanish_request_confirm">Il diritto all\'oblio è una &lt;b&gt;soluzione estrema&lt;/b&gt; e dovrebbe essere utilizzata solo quando si desidera smettere di contribuire per sempre e anche per nascondere il più possibile le proprie associazioni passate. \n\nLa cancellazione di un utenza su Wikimedia commons avviene cambiando il nome dell\'utenza in modo che gli altri non possano riconoscere i contributi, attraverso un processo chiamato scomparsa dell\'utenza. &lt;b&gt;L\'oblio non garantisce un anonimato completo né la rimozione dei contributi ai progetti.&lt;/b&gt;</string>
<string name="caption">Didascalia</string>
<string name="caption_copied_to_clipboard">Didascalia copiata negli appunti</string>
<string name="congratulations_all_pictures_in_this_album_have_been_either_uploaded_or_marked_as_not_for_upload">Congratulazioni, tutte le foto di questo album sono state caricate o contrassegnate come non adatte al caricamento.</string>
<string name="show_in_explore">Mostra in Esplora</string>
<string name="show_in_nearby">Mostra nelle vicinanze</string>
<string name="image_tag_line_created_and_uploaded_by">Creato e caricato da: %1$s</string>
<string name="image_tag_line_created_by_and_uploaded_by">Creato da %1$s e caricato da %2$s</string>
</resources>

View file

@ -822,6 +822,7 @@
<string name="talk">שיחה</string>
<string name="write_something_about_the_item">נא לכתוב משהו על פריט \"%1$s\". זה יוצג לציבור.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\"%1$s\" כבר לא קיים, אי־אפשר לצלם אותו.</string>
<string name="is_at_a_different_place_wikidata">%1$s נמצא במקום אחר.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\"%1$s\" נמצא במקום אחר. נא לציין את המקום הנכון למטה, ואם אפשר, לכתוב את קו הרוחב ואת קו האורך הנכונים.</string>
<string name="other_problem_or_information_please_explain_below">בעיה אחרת או מידע אחר (נא להסביר הלאה).</string>
<string name="feedback_destination_note">המשוב שלך מתפרסם בדף הוויקי הבא: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>

View file

@ -393,6 +393,7 @@
<string name="account_created">ანგარიში შეიქმნა!</string>
<string name="theme_dark_name">მუქი</string>
<string name="theme_light_name">ღია</string>
<string name="title_page_bookmarks_items">ელემენტი</string>
<string name="done">გაკეთდა</string>
<string name="back">უკან</string>
<string name="welcome_custom_selector_ok">შესანიშნავია</string>

View file

@ -41,7 +41,9 @@
<string name="show_captions_description">설명</string>
<string name="nearby_row_image">이미지</string>
<string name="nearby_all">모두</string>
<string name="nearby_filter_toggle">위로 전환</string>
<string name="nearby_filter_search">검색 뷰</string>
<string name="nearby_filter_state">장소 상태</string>
<string name="appwidget_img">오늘의 이미지</string>
<plurals name="uploads_pending_notification_indicator">
<item quantity="one">%1$d개의 파일을 올리는 중</item>
@ -435,7 +437,7 @@
<string name="display_campaigns_explanation">진행되고 있는 캠페인 보기</string>
<string name="option_allow">허용</string>
<string name="option_dismiss">숨기기</string>
<string name="this_function_needs_network_connection" fuzzy="true">이 기능에는 네트워크 연결이 필요합니다. 연결 설정을 확인해 주십시오.</string>
<string name="this_function_needs_network_connection">이 기능을 사용하려면 네트워크 연결이 필요합니다. 연결 설정을 확인해 주십시오.</string>
<string name="error_processing_image">이미지를 처리하는 동안 오류가 발생했습니다. 다시 시도해 주십시오!</string>
<string name="getting_edit_token">편집을 위한 토큰을 가져옵니다</string>
<string name="check_category_adding_template">분류 검사를 위한 틀을 추가합니다</string>
@ -460,7 +462,7 @@
<string name="review_thanks_yes_button_text">다음 이미지</string>
<string name="review_thanks_no_button_text"></string>
<string name="skip_image_explanation">이 버튼을 클릭하면 위키미디어 공용으로부터 최근 업로드된 다른 이미지를 제공합니다</string>
<string name="review_image_explanation" fuzzy="true">이미지를 검토하고 위키미디어 공용의 품질을 개선할 수 있습니다.\n 4가지 검토 변수가 있습니다:\n - 이 이미지가 범위 내에 있는가? \n - 이 이미지가 저작권 규정을 준수하고 있는가? \n - 이 이미지가 올바르게 분류되어 있는가? \n - 모든 것이 문제 없다면 기여자에게 감사를 표할 수도 있습니다.</string>
<string name="review_image_explanation">이미지를 검토하고 위키미디어 공용의 품질을 개선할 수 있습니다.\n검토의 3가지 매개변수는 다음과 같습니다:\n\n- 이 이미지가 범위 내에 있는가?\n아니요(범위 밖)를 선택하면 이 이미지에 삭제 요청 틀이 추가됩니다.\n\n- 이 이미지가 저작권 규정을 준수하고 있는가?\n아니요(저작권 규칙을 따르지 않음)를 선택하면 이 이미지에 삭제 요청 틀이 추가됩니다.\n\n- 이 이미지가 올바르게 분류되어 있는가?\n아니요(올바르게 분류되지 않음)를 선택하면 이 이미지에 삭제 요청 틀이 추가됩니다.\n\n모든 것이 문제 없다면 이미지에 틀이 추가되지 않고, 기여자에게 감사를 표할 수도 있습니다.</string>
<string name="no_image">이미지가 사용되지 않음</string>
<string name="no_image_uploaded">이미지가 올려지지 않음</string>
<string name="no_notification">읽지 않은 알림이 없습니다</string>
@ -496,7 +498,7 @@
<string name="delete_helper_show_deletion_message_if">%1$s을(를) 삭제 신청함</string>
<string name="delete_helper_show_deletion_title_failed">실패</string>
<string name="delete_helper_show_deletion_message_else">삭제를 요청하지 못했습니다.</string>
<string name="delete_helper_ask_spam_selfie" fuzzy="true">셀카</string>
<string name="delete_helper_ask_spam_selfie">어떤 문서에도 사용되지 않는 셀카</string>
<string name="delete_helper_ask_spam_blurry">완전히 흐림</string>
<string name="delete_helper_ask_reason_copyright_press_photo">보도 사진</string>
<string name="delete_helper_ask_reason_copyright_internet_photo">인터넷상의 무작위 이미지</string>
@ -507,6 +509,7 @@
<string name="category_edit_helper_show_edit_title_success">성공</string>
<string name="category_edit_helper_edit_message_else">분류를 추가하지 못했습니다.</string>
<string name="category_edit_button_text">분류 업데이트</string>
<string name="depictions_edit_helper_show_edit_title">묘사된 항목 편집하기</string>
<string name="coordinates_edit_helper_show_edit_title">좌표 업데이트</string>
<string name="description_edit_helper_show_edit_title">설명 업데이트</string>
<string name="caption_edit_helper_show_edit_title">캡션 업데이트</string>
@ -566,10 +569,13 @@
<string name="paused">일시 중단됨</string>
<string name="more">더 보기</string>
<string name="bookmarks">책갈피</string>
<string name="achievements_tab_title">성과</string>
<string name="leaderboard_tab_title">리더보드</string>
<string name="rank_prefix">순위:</string>
<string name="count_prefix">개수:</string>
<string name="leaderboard_column_rank">순위</string>
<string name="leaderboard_column_user">사용자</string>
<string name="leaderboard_column_count">개수</string>
<string name="setting_avatar_dialog_title">리더보드 아바타로 설정</string>
<string name="setting_avatar_dialog_message">아바타로 설정 중이니 기다려 주십시오</string>
<string name="avatar_set_unsuccessfully">새 아바타를 설정하는 중 오류가 발생했습니다. 다시 시도해 주십시오</string>

View file

@ -1,7 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Authors:
* Tajamul9
-->
<resources>
<string name="crash_dialog_title">کامَنٕز گوو رُکِتھ</string>
<string name="crash_dialog_text">Oops. کیہہ تام گوو غلط!</string>

View file

@ -785,6 +785,7 @@
<string name="talk">Разговор</string>
<string name="write_something_about_the_item">Напишете нешто за предметот „%1$s“. Ова ќе биде јавно видливо.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">„%1$s“ повеќе не постои, нема да може да се фотографира.</string>
<string name="is_at_a_different_place_wikidata">„%1$s“ се наоѓа на друго место.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">„%1$s“ се наоѓа на друго место. Подолу укажете го исправното место и, ако е можно, ставете исправна географска ширина и должина.</string>
<string name="other_problem_or_information_please_explain_below">Друг проблем или информација (објаснете подолу).</string>
<string name="feedback_destination_note">Вашите мислења се објавуваат на следнава викистраница: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>

View file

@ -826,6 +826,7 @@
<string name="talk">Dyskusja</string>
<string name="write_something_about_the_item">Napisz coś o elemencie \' %1$s\'. Będzie to publicznie widoczne.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\'%1$s\' już nie istnieje, nie da się zrobić dla niego zdjęcia.</string>
<string name="is_at_a_different_place_wikidata">\'%1$s\' znajduje się w innym miejscu.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\'%1$s\' jest w innym miejscu. Proszę podać poniżej prawidłowe miejsce i jeśli to możliwe, wpisać jego prawidłową szerokość i długość geograficzną.</string>
<string name="other_problem_or_information_please_explain_below">Inny problem lub informacja (proszę wyjaśnić poniżej).</string>
<string name="feedback_destination_note">Twoja opinia zostanie opublikowana na następującej stronie wiki: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Aplikacja mobilna/Opinie&lt;/a&gt;</string>
@ -855,6 +856,7 @@
<string name="account">Konto</string>
<string name="vanish_account">Wymaż konto</string>
<string name="account_vanish_request_confirm_title">Ostrzeżenie o wymazaniu konta</string>
<string name="account_vanish_request_confirm">Wymazanie to &lt;b&gt;ostateczność&lt;/b&gt; i należy z niej skorzystać &lt;b&gt;tylko wtedy, gdy chcesz na zawsze zaprzestać edytowania&lt;/b&gt; oraz ukryć jak najwięcej swoich przeszłych powiązań.&lt;br/&gt;&lt;br/&gt;Usunięcie konta w Wikimedia Commons odbywa się poprzez zmianę nazwy konta, tak aby inni nie mogli rozpoznać Twoich wkładów, w procesie zwanym wymazaniem konta. &lt;b&gt;Wymazanie nie gwarantuje pełnej anonimowości ani nie usuwa wkładów wniesionych do projektów&lt;/b&gt;.</string>
<string name="caption">Podpis</string>
<string name="caption_copied_to_clipboard">Podpis skopiowano do schowka</string>
<string name="congratulations_all_pictures_in_this_album_have_been_either_uploaded_or_marked_as_not_for_upload">Gratulacje, wszystkie zdjęcia w tym albumie zostały przesłane lub zostały oznaczone jako nie do przesłania.</string>

View file

@ -781,6 +781,7 @@
<string name="talk">Ciaciarade</string>
<string name="write_something_about_the_item">Scrive cheicòs a propòsit ëd l\'element \'%1$s\'. Sòn a sarà visìbil për tuti.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\'%1$s\' a esist pi nen, a peul pa esse fotografà.</string>
<string name="is_at_a_different_place_wikidata">\'%1$s\' a l\'é ant un pòst diferent.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\'%1$s\' a l\'é ant un pòst diferent. Për piasì, ch\'a spessìfica ël pòst giust sì-sota e, si possìbil, ch\'a scriva latitùdin e longitùdin giuste.</string>
<string name="other_problem_or_information_please_explain_below">Àutr problema o anformassion (për piasì, ch\'a spiega sì-sota).</string>
<string name="feedback_destination_note">Ij sò sugeriment a saran giontà a coste pàgine wiki: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>

View file

@ -195,11 +195,19 @@
<string name="read_storage_permission_rationale">اړينه پرېښولی: بهرنۍ زېرمه ولولئ. کاريال ستاسو انځورتونه ته پرته له دې لاسرسی نشي موندلی.</string>
<string name="ok">ښه</string>
<string name="warning">گواښنه</string>
<string name="upload">راپورته‌کول</string>
<string name="yes">هو</string>
<string name="no">نه</string>
<string name="media_detail_caption">نيونگ</string>
<string name="media_detail_title">سرليک</string>
<string name="media_detail_description">څرگندونه</string>
<string name="media_detail_discussion">شننه</string>
<string name="media_detail_author">ليکوال</string>
<string name="media_detail_uploaded_date">راپورته‌کېدلو نېټه</string>
<string name="media_detail_license">منښتليک</string>
<string name="media_detail_coordinates">کورډيناټونه</string>
<string name="media_detail_coordinates_empty">هېڅ نه دي چمتو شوي</string>
<string name="become_a_tester_title">ازمېښتي ازمايښتگر شئ</string>
<string name="welcome_image_welcome_wikipedia">ويکيپېډياښه راغلئ</string>
<string name="cancel">ناگارل</string>
<string name="navigation_drawer_open">پرانيستل</string>
@ -211,6 +219,8 @@
<string name="navigation_item_settings">امستنې</string>
<string name="navigation_item_feedback">غبرگون</string>
<string name="navigation_item_logout">وتل</string>
<string name="navigation_item_review">بياکتنه</string>
<string name="no_description_found">هيڅ څرگنداوی ونهٔ موندل شو</string>
<string name="nearby_directions">تگلوري</string>
<string name="nearby_wikidata">ويکي‌اومتوک</string>
<string name="nearby_wikipedia">ويکيپېډيا</string>

View file

@ -126,6 +126,7 @@
<string name="menu_from_camera">Tirar foto</string>
<string name="menu_nearby">Próximo</string>
<string name="provider_contributions">Meus envios</string>
<string name="menu_copy_link">Copiar link</string>
<string name="menu_share">Compartilhar</string>
<string name="menu_view_file_page">Ver página do arquivo</string>
<string name="share_title_hint">Legenda (Obrigatório)</string>
@ -694,6 +695,8 @@
<string name="custom_selector_info_text2">Diferente da imagem à esquerda, a da direita possui o logotipo do Commons, o que indica que o envio dela já está concluído.\n Toque e segure para pré-visualizar a imagem.</string>
<string name="welcome_custom_selector_ok">Ótimo</string>
<string name="custom_selector_already_uploaded_image_text">Esta imagem já foi enviada para Commons.</string>
<string name="custom_selector_dismiss_limit_warning_button_text">Ignorar</string>
<string name="custom_selector_button_limit_text">Máx.: %1$d</string>
<string name="place_state_wlm">WLM</string>
<string name="wlm_upload_info">Essa imagem será enviada ao concurso Wiki Loves Monuments</string>
<string name="display_monuments">Monumentos de exibição</string>
@ -755,6 +758,8 @@
<string name="similar_coordinate_description_auto_set">As coordenadas não são exatas, mas a pessoa que carregou essa imagem crê que sejam próximas o suficiente.</string>
<string name="storage_permissions_denied">Permissão de armazenamento negada</string>
<string name="unable_to_share_upload_item">Incapaz de compartilhar esse item</string>
<string name="edit_image">Editar imagem</string>
<string name="edit_location">Editar localização</string>
<string name="location_updated">Localização atualizada!</string>
<string name="remove_location">Remover localização</string>
<string name="location_removed">Localização removida!</string>
@ -771,4 +776,13 @@
<item quantity="other">%d imagens selecionadas</item>
</plurals>
<string name="write_something_about_the_item">Escreva algo sobre o item %1$s. Isso será visivel publicamente.</string>
<string name="uploads">Envios</string>
<string name="pending">Pendente</string>
<string name="failed">Falhou</string>
<string name="custom_selector_delete_folder">Excluir pasta</string>
<string name="custom_selector_confirm_deletion_title">Confirmar exclusão</string>
<string name="custom_selector_delete">Excluir</string>
<string name="custom_selector_cancel">Cancelar</string>
<string name="account">Conta</string>
<string name="caption">Legenda</string>
</resources>

View file

@ -16,6 +16,7 @@
* Mansil alfalb
* McDutchie
* Mirzali
* O andras
* Sarilho1
* Unamane
* Vitorvicentevalente
@ -90,7 +91,7 @@
<string name="logging_in_message">Aguarde, por favor…</string>
<string name="updating_caption_title">A atualizar legendas e descrições</string>
<string name="updating_caption_message">Aguarde, por favor…</string>
<string name="login_success" fuzzy="true">Sessão iniciada!</string>
<string name="login_success">Sessão iniciada!</string>
<string name="login_failed">O início de sessão falhou!</string>
<string name="upload_failed">O ficheiro não foi encontrado. Tente outro, por favor.</string>
<string name="retry_limit_reached">Limite máximo de novas tentativas atingido! Cancele o carregamento e tente novamente, por favor</string>
@ -117,13 +118,15 @@
<string name="menu_from_camera">Tirar foto</string>
<string name="menu_nearby">Nas redondezas</string>
<string name="provider_contributions">Carregamentos</string>
<string name="menu_copy_link">Copiar ligação</string>
<string name="menu_link_copied">A ligação foi copiada para a área de transferência</string>
<string name="menu_share">Partilhar</string>
<string name="menu_view_file_page">Ver página do ficheiro</string>
<string name="share_title_hint">Legenda (obrigatória)</string>
<string name="add_caption_toast">Forneça uma legenda para este ficheiro, por favor</string>
<string name="share_description_hint">Descrição</string>
<string name="share_caption_hint">Legenda</string>
<string name="login_failed_network" fuzzy="true">Não é possível iniciar uma sessão - falha de rede</string>
<string name="login_failed_network">Não foi possível iniciar sessão - falha de rede</string>
<string name="login_failed_throttled">Demasiadas tentativas mal sucedidas. Por favor, tente novamente dentro de minutos.</string>
<string name="login_failed_blocked">Desculpe, este utilizador foi bloqueado na wiki Commons</string>
<string name="login_failed_2fa_needed">Tem de fornecer o seu código de autenticação de dois fatores.</string>
@ -285,7 +288,7 @@
<string name="skip_login">Saltar</string>
<string name="navigation_item_login">Entrar</string>
<string name="skip_login_title">Pretende mesmo ignorar o início de sessão?</string>
<string name="skip_login_message" fuzzy="true">Terá de iniciar sessão para carregar fotografias mais tarde.</string>
<string name="skip_login_message">Terá de iniciar sessão para carregar fotografias no futuro.</string>
<string name="login_alert_message">Inicie uma sessão para usar esta funcionalidade</string>
<string name="copy_wikicode">Copiar o texto wiki para a área de transferência</string>
<string name="wikicode_copied">O texto wiki foi copiado para a área de transferência</string>
@ -359,7 +362,7 @@
<string name="quiz_screenshot_question">Esta captura de ecrã pode ser carregada?</string>
<string name="share_app_title">Partilhar aplicação</string>
<string name="rotate">Rodar</string>
<string name="error_fetching_nearby_places" fuzzy="true">Erro ao procurar locais próximos.</string>
<string name="error_fetching_nearby_places">Não foi possível carregar locais próximos</string>
<string name="no_nearby_places_around">Não existem locais próximos</string>
<string name="error_fetching_nearby_monuments">Erro ao procurar monumentos próximos.</string>
<string name="no_recent_searches">Não há pesquisas recentes</string>
@ -371,11 +374,13 @@
<string name="delete">Eliminar</string>
<string name="Achievements">Realizações</string>
<string name="Profile">Perfil</string>
<string name="badges">Medalhas</string>
<string name="statistics">Estatísticas</string>
<string name="statistics_thanks">Agradecimentos recebidos</string>
<string name="statistics_featured">Imagens destacadas</string>
<string name="statistics_wikidata_edits">Imagens via \"Locais próximos\"</string>
<string name="level" fuzzy="true">Nível</string>
<string name="level">Nível %d</string>
<string name="profileLevel">%s (Nível %s)</string>
<string name="images_uploaded">Imagens carregadas</string>
<string name="image_reverts">Imagens não revertidas</string>
<string name="images_used_by_wiki">Imagens usadas</string>
@ -407,6 +412,7 @@
<string name="map_application_missing">Não foi encontrada no seu dispositivo nenhuma aplicação de mapas compatível. Para usar esta funcionalidade instale uma aplicação de mapas, por favor.</string>
<string name="title_page_bookmarks_pictures">Fotografias</string>
<string name="title_page_bookmarks_locations">Locais</string>
<string name="title_page_bookmarks_categories">Categorias</string>
<string name="menu_bookmark">Adicionar ou remover dos marcadores</string>
<string name="provider_bookmarks">Marcadores</string>
<string name="bookmark_empty">Não adicionou nenhum marcador</string>
@ -450,7 +456,7 @@
<string name="open_document_photo_picker_explanation">O novo seletor de fotografias do Android corre o risco de perder informações de localização. Ativar se pensa vir a usá-lo.</string>
<string name="location_loss_warning">Desativar pode acionar o novo seletor de fotografias do Android. Este corre o risco de perder informações de localização.\n\nToque em \'Ler mais\' para mais informações.</string>
<string name="nearby_campaign_dismiss_message">Deixará de ver as campanhas. No entanto, pode reativar esta notificação nas configurações, se desejar.</string>
<string name="this_function_needs_network_connection" fuzzy="true">Esta função requer uma ligação de rede. Verifique as suas configurações de ligação, por favor.</string>
<string name="this_function_needs_network_connection">Esta função necessita de ligação à rede. Por favor, verifique as suas configurações de ligação.</string>
<string name="error_processing_image">Ocorreu um erro ao processar a imagem. Tente novamente, por favor!</string>
<string name="getting_edit_token">A obter chave para edição</string>
<string name="check_category_adding_template">A adicionar predefinição para verificação da categoria</string>
@ -488,6 +494,7 @@
<string name="no_notification">Não tem nenhuma notificação por ler</string>
<string name="no_read_notification">Não tem nenhuma notificação lida</string>
<string name="share_logs_using">Partilhar os registos usando</string>
<string name="check_your_email_inbox">Verifique sua caixa de entrada de e-mail</string>
<string name="menu_option_read">Ver lidas</string>
<string name="menu_option_unread">Ver não lidas</string>
<string name="error_occurred_in_picking_images">Ocorreu um erro ao escolher imagens</string>
@ -562,7 +569,7 @@
<string name="coordinates_edit_helper_edit_message_else">Não foi possível adicionar coordenadas.</string>
<string name="description_edit_helper_edit_message_else">Não foi possível adicionar as descrições.</string>
<string name="caption_edit_helper_edit_message_else">Não foi possível adicionar a legenda.</string>
<string name="coordinates_picking_unsuccessful" fuzzy="true">Não foi possível obter coordenadas.</string>
<string name="coordinates_picking_unsuccessful">Coordenadas da imagem não actualizadas</string>
<string name="descriptions_picking_unsuccessful">Não foi possível obter as descrições.</string>
<string name="description_activity_title">Editar descrições e legendas</string>
<string name="share_image_via">Partilhar imagem via</string>
@ -577,12 +584,13 @@
<string name="place_state_needs_photo">Necessita fotografia</string>
<string name="place_type">Tipo de local:</string>
<string name="nearby_search_hint">Ponte, museu, hotel, etc.</string>
<string name="you_must_reset_your_passsword" fuzzy="true">Ocorreu algo de errado com a sessão, tem de redefinir a sua palavra-passe!</string>
<string name="you_must_reset_your_passsword">Ocorreu um erro ao iniciar sessão. Tem de redefinir a sua palavra-passe!</string>
<string name="title_for_media">MULTIMÉDIA</string>
<string name="title_for_child_classes">CLASSES DESCENDENTES</string>
<string name="title_for_parent_classes">CLASSES PROGENITORAS</string>
<string name="upload_nearby_place_found_title">Foi encontrado um local próximo</string>
<string name="upload_nearby_place_found_description_singular" fuzzy="true">Isto é uma fotografia de %1$s?</string>
<string name="upload_nearby_place_found_description_plural">Estas imagens são de %1$s?</string>
<string name="upload_nearby_place_found_description_singular">Isto é uma imagem de %1$s?</string>
<string name="title_app_shortcut_bookmark">Marcadores</string>
<string name="title_app_shortcut_setting">Definições</string>
<string name="remove_bookmark">Removido dos marcadores</string>
@ -597,7 +605,7 @@
<string name="recommend_high_accuracy_mode">Para obter os melhores resultados, escolha o modo Alta Precisão.</string>
<string name="ask_to_turn_location_on">Ativar a localização?</string>
<string name="nearby_needs_location">A funcionalidade de proximidade precisa que a localização esteja ativada para funcionar corretamente</string>
<string name="upload_map_location_access" fuzzy="true">Precisa de dar acesso à sua localização atual para gravar automaticamente a localização.</string>
<string name="upload_map_location_access">Precisa de dar permissão da sua localização geográfica para a gravar automaticamente.</string>
<string name="use_location_from_similar_image">Tirou estas duas fotos no mesmo lugar? Quer usar a latitude/longitude da fotografia da direita?</string>
<string name="load_more">Carregar mais</string>
<string name="nearby_no_results">Não foi encontrado nenhum local; tente alterar os seus critérios de pesquisa.</string>
@ -698,7 +706,7 @@
<string name="read_phone_state_permission_message">Os mapas de locais próximos precisam de ler ESTADO DO TELEFONE para funcionar devidamente</string>
<string name="contributions_of_user">Contribuições do utilizador: %s</string>
<string name="achievements_of_user">Realizações do utilizador: %s</string>
<string name="menu_view_user_page" fuzzy="true">Ver página de utilizador</string>
<string name="menu_view_user_page">Ver perfil de utilizador</string>
<string name="edit_depictions">Editar elementos retratados</string>
<string name="edit_categories">Editar categorias</string>
<string name="advanced_options">Opções avançadas</string>
@ -711,7 +719,7 @@
<string name="add_location">Adicionar localização</string>
<string name="feedback_sharing_data_alert">Remova desta mensagem de correio todas as informações que não se sinta à vontade em partilhar publicamente, por favor. Adicionalmente, esteja consciente de que o seu endereço de correio eletrónico, com o qual está a fazer esta publicação, e o nome e imagem de perfil a ele associados, serão visíveis pelo público geral.</string>
<string name="explore_map_details">Detalhes</string>
<string name="achievements_unavailable_beta" fuzzy="true">As realizações só estão disponíveis na versão de produção; consulte a documentação para programadores, por favor.</string>
<string name="achievements_unavailable_beta">As conquistas só estão disponíveis na versão de produção. Consulte a documentação para programadores.</string>
<string name="leaderboard_unavailable_beta">A tabela de classificação só está disponível na versão prod. Consulte a documentação do desenvolvedor.</string>
<string name="copyright_popup">Carregue somente fotografias tiradas por si. Os utilizadores que carregarem imagens cujos direitos de autor estão protegidos serão bloqueados. Isto também se aplica à versão beta. Obrigado por testar a aplicação!</string>
<string name="select_feedback_data_choice">Desmarque todas as informações que não se sente à vontade em tornar públicas.</string>
@ -756,6 +764,8 @@
<string name="see_your_achievements">Ver as suas realizações</string>
<string name="edit_image">Editar imagem</string>
<string name="edit_location">Editar localização</string>
<string name="location_updated">Localização actualizada!</string>
<string name="remove_location">Remover Localização</string>
<string name="send_thanks_to_author">Agradecer ao autor</string>
<string name="error_sending_thanks">Erro no envio de agradecimento ao autor.</string>
<plurals name="custom_picker_images_selected_title_appendix">

View file

@ -848,6 +848,7 @@
<string name="talk">Обсуждение</string>
<string name="write_something_about_the_item">Напишите что-нибудь об элементе \'%1$s\'. Это будет видно всем.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\'%1$s\' больше не существует, его невозможно сфотографировать.</string>
<string name="is_at_a_different_place_wikidata">\'%1$s\' находится в другом месте.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\'%1$s\' находится в другом месте. Пожалуйста, укажите правильное место ниже и, если возможно, напишите правильную широту и долготу.</string>
<string name="other_problem_or_information_please_explain_below">Другая проблема или информация (пожалуйста, объясните ниже).</string>
<string name="feedback_destination_note">Ваш отзыв будет опубликован на следующей вики-странице: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>

View file

@ -2,6 +2,7 @@
<!-- Authors:
* Abbedabb
* Ainali
* Gkyziridis
* Jopparn
* Kakan spelar
* Liuxinyu970226
@ -789,6 +790,7 @@
<string name="talk">Diskussion</string>
<string name="write_something_about_the_item">Skriv någonting om objektet \"%1$s\". Det kommer att visas offentligt.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\"%1$s\" finns inte längre och inga bilder kan någonsin tas på det.</string>
<string name="is_at_a_different_place_wikidata">\' %1$s \' är på en annan plats.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\"%1$s\" är på en annan plats. Ange den korrekta platsen nedan samt ange latitud och longitud om det är möjligt.</string>
<string name="other_problem_or_information_please_explain_below">Andra problem eller information (ange nedan).</string>
<string name="feedback_destination_note">Din återkoppling kommer att skickas till följande wikisida: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobilapp/Återkoppling&lt;/a&gt;</string>

View file

@ -4,6 +4,7 @@
* Fahimrazick
* Gurulenin
* Kaartic
* Matrix
* Sank
* Sriveenkat
* Yuvipanda
@ -13,6 +14,10 @@
<string name="commons_github">பொதுவக கிட்டுகபு மூலக் குறி</string>
<string name="commons_logo">பொதுவக இலச்சினை</string>
<string name="commons_website">பொதுவக வலைத்தளம்</string>
<string name="exit_location_picker">இருப்பிடத் தேர்வியிலிருந்து வெளியேற்</string>
<string name="submit">சமர்ப்பி</string>
<string name="add_another_description">மற்றொரு விளக்கத்தைச் சேர்க்க</string>
<string name="add_new_contribution">புதிய பங்களிப்பைச் சேர்க்க</string>
<string name="nearby_row_image">படம்</string>
<string name="nearby_all">யாவும்</string>
<plurals name="uploads_pending_notification_indicator">

View file

@ -2,6 +2,7 @@
<!-- Authors:
* Chaduvari
* Nskjnv
* Rajadvamshi
* Ravichandra
* Veeven
-->
@ -45,29 +46,29 @@
<item quantity="other">పంచుకున్న కంటెంటును అందుకుంటున్నాం. బొమ్మల పరిమాణాన్ని బట్టి, మీ పరికరాన్ని బట్టీ ప్రాసెసింగు చేసేందుకు కొంత సమయం పట్టవచ్చు</item>
</plurals>
<string name="navigation_item_explore">శోధించండి</string>
<string name="preference_category_appearance">రూపురేఖలు</string>
<string name="preference_category_general">సాధారణ</string>
<string name="preference_category_feedback">ప్రతిస్పందన</string>
<string name="preference_category_privacy">అంతరంగిక</string>
<string name="app_name">కామన్స్</string>
<string name="preference_category_appearance">స్వరూపం</string>
<string name="preference_category_general">సాధారణ</string>
<string name="preference_category_feedback">ప్రతిపుష్టి</string>
<string name="preference_category_privacy">గోప్య</string>
<string name="app_name">సామూహిక</string>
<string name="menu_settings">అమరికలు</string>
<string name="intent_share_upload_label">కామన్స్ లోకి ఎక్కించండి</string>
<string name="intent_share_upload_label">సామూహిక కు ఎగుమోత</string>
<string name="username">వాడుకరిపేరు</string>
<string name="password">సంకేతపదం</string>
<string name="login_credential">మీ కామన్స్ బీటా ఖాతా లోనికి ప్రవేశించండి</string>
<string name="login">లాగినవండి</string>
<string name="login_credential">మీ సామూహికా బీటా ఖాతా లోనికి ప్రవేశించండి</string>
<string name="login">ప్రవేశం</string>
<string name="forgot_password">సంకేతపదం మర్చిపోయారా?</string>
<string name="signup">నమోదవ్వండి</string>
<string name="logging_in_title">లాగినవుతున్నారు</string>
<string name="logging_in_message">వేచివుండండి…</string>
<string name="updating_caption_title">ఉల్లేఖనలను, వివరణలనూ తాజాకరిస్తున్నాం</string>
<string name="updating_caption_message">వేచి ఉండండి</string>
<string name="signup">నమోద</string>
<string name="logging_in_title">ప్రవేశిస్తున్నారు...</string>
<string name="logging_in_message">దయచేసి వేచివుండండి </string>
<string name="updating_caption_title">ఉల్లేఖనలను, వివరణలను నవీకరిస్తోంది</string>
<string name="updating_caption_message">దయచేసి వేచివుండండి </string>
<string name="login_success" fuzzy="true">లాగిన్ విజయవంతమైంది!</string>
<string name="login_failed" fuzzy="true">లాగిన్ విఫలమైంది!</string>
<string name="upload_failed">ఫైలు కనబడలేదు. మరో ఫైలు కోసం ప్రయత్నించండి.</string>
<string name="upload_failed">దస్త్రం కనబడలేదు. దయచేసి మరో దస్త్రం కోసం ప్రయత్నించండి.</string>
<string name="authentication_failed" fuzzy="true">అథీకరణ విఫలమైంది, మళ్ళీ ప్రయత్నించండి</string>
<string name="uploading_started">క్కింపు మొదలైంది!</string>
<string name="uploading_queued">క్కింపు వరుసలో ఉంది (పరిమిత కనెక్షన్ల మోడ్ చేతనంగా ఉంది)</string>
<string name="uploading_started">గుమోత మొదలైంది!</string>
<string name="uploading_queued">గుమోత వరుసలో ఉంది (పరిమిత సంబంధ పద్దతి చేతనం)</string>
<string name="upload_completed_notification_title">%1$s ను ఎక్కించాం!</string>
<string name="upload_completed_notification_text">మీ ఎక్కింపును చూసేందుకు నొక్కండి</string>
<string name="upload_progress_notification_title_start">దస్త్రాన్ని ఎక్కిస్తున్నాం: $s</string>

View file

@ -12,6 +12,7 @@
* JackUKElliott
* Jelican9
* Joseph
* Leo
* McAang
* McDutchie
* Mirzali
@ -129,6 +130,8 @@
<string name="menu_from_camera">Fotoğraf çek</string>
<string name="menu_nearby">Yakınımdakiler</string>
<string name="provider_contributions">Yüklemelerim</string>
<string name="menu_copy_link">Bağlantıyı kopyala</string>
<string name="menu_link_copied">Bağlantı panoya kopyalandı</string>
<string name="menu_share">Paylaş</string>
<string name="menu_view_file_page">Dosya sayfasını görüntüle</string>
<string name="share_title_hint">Başlık (Zorunlu)</string>
@ -139,6 +142,7 @@
<string name="login_failed_throttled">Çok sayıda başarısız girişimde bulundunuz. Birkaç dakika sonra tekrar deneyin.</string>
<string name="login_failed_blocked">Üzgünüz, bu kullanıcı Commons\'ta engellendi</string>
<string name="login_failed_2fa_needed">İki faktörlü kimlik doğrulama kodunu sağlamalısınız.</string>
<string name="login_failed_email_auth_needed">E-posta adresinize bir giriş doğrulama kodu gönderildi. Lütfen giriş yapmak için kodu sağlayın.</string>
<string name="login_failed_generic">Oturum açma başarısız</string>
<string name="share_upload_button">Yükle</string>
<string name="multiple_share_base_title">Bu ayarı adlandırın</string>
@ -244,6 +248,7 @@
<string name="become_a_tester_title">Beta Test Kullanıcısı Olun</string>
<string name="become_a_tester_description">Google Play\'de beta kanalımıza katılın ve yeni özelliklere ve hata düzeltmelerine erken erişin</string>
<string name="_2fa_code">2 Faktörlü Kimlik Doğrulama (2FA) Kodu</string>
<string name="email_auth_code">E-posta doğrulama kodu</string>
<string name="logout_verification">Gerçekten çıkış yapmak istiyor musunuz?</string>
<string name="mediaimage_failed">Medya Görüntüsü Başarısız Oldu</string>
<string name="no_subcategory_found">Alt kategori bulunamadı</string>
@ -304,6 +309,7 @@
<string name="copy_wikicode">Vikimetnini panoya kopyala</string>
<string name="wikicode_copied">Vikimetin panoya kopyalandı</string>
<string name="nearby_location_not_available">Yakınımdakiler düzgün çalışmayabilir, Konum kullanılamıyor.</string>
<string name="nearby_showing_pins_offline">İnternet kullanılamıyor. Yalnızca önbelleğe alınmış yerler gösteriliyor.</string>
<string name="upload_location_access_denied">Konum erişimi reddedildi. Bu özelliği kullanmak için lütfen konumunuzu manuel olarak ayarlayın.</string>
<string name="location_permission_rationale_nearby">Yakındaki yerler listesini görüntülemek için izin vermeniz gerekiyor</string>
<string name="location_permission_rationale_explore">Yakındaki resimlerin listesini görüntülemek için izin gerekli</string>
@ -387,11 +393,13 @@
<string name="delete">Sil</string>
<string name="Achievements">Başarılar</string>
<string name="Profile">Profil</string>
<string name="badges">Rozetler</string>
<string name="statistics">İstatistikler</string>
<string name="statistics_thanks">Teşekkür Alındı</string>
<string name="statistics_featured">Seçkin Resimler</string>
<string name="statistics_wikidata_edits">\"Yakındaki Yerler\"den Resimler</string>
<string name="level" fuzzy="true">Seviye</string>
<string name="level">Seviye %d</string>
<string name="profileLevel">%s (Seviye %s)</string>
<string name="images_uploaded">Resimler Yüklendi</string>
<string name="image_reverts">Resimler Geri Alınmadı</string>
<string name="images_used_by_wiki">Resimler Kullanıldı</string>
@ -423,6 +431,7 @@
<string name="map_application_missing">Cihazınızda uyumlu bir harita uygulaması bulunamadı. Lütfen bu özelliği kullanmak için bir harita uygulaması yükleyin.</string>
<string name="title_page_bookmarks_pictures">Resimler</string>
<string name="title_page_bookmarks_locations">Konumlar</string>
<string name="title_page_bookmarks_categories">Kategoriler</string>
<string name="menu_bookmark">Yer imlerini ekle/kaldır</string>
<string name="provider_bookmarks">Yer imleri</string>
<string name="bookmark_empty">Henüz yer imlerine bir şey eklemediniz</string>
@ -803,6 +812,8 @@
<string name="talk">Tartışma</string>
<string name="write_something_about_the_item">\' %1$s \' öğesi hakkında bir şeyler yazın. Herkes tarafından görülebilir olacaktır.</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">\'%1$s\' artık yok, dolayısı ile resmi çekilemez.</string>
<string name="is_at_a_different_place_wikidata">\'%1$s\' farklı bir yerde.</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">\'%1$s\' farklı bir yerde. Lütfen aşağıdaki doğru yeri belirtin ve mümkünse doğru enlem ve boylamı yazın.</string>
<string name="other_problem_or_information_please_explain_below">Diğer sorun veya bilgi (lütfen aşağıda açıklayınız).</string>
<string name="feedback_destination_note">Geri bildiriminiz aşağıdaki wiki sayfasına gönderilir: &lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>
<string name="are_you_sure_that_you_want_cancel_all_the_uploads">Tüm yüklemeleri iptal etmek istediğinizden emin misiniz?</string>
@ -810,10 +821,34 @@
<string name="uploads">Yüklemeler</string>
<string name="pending">Beklemede</string>
<string name="failed">Başarısız</string>
<string name="could_not_load_place_data">Yer verileri yüklenemedi</string>
<string name="custom_selector_delete_folder">Klasörü Sil</string>
<string name="custom_selector_confirm_deletion_title">Silmeyi Onayla</string>
<string name="custom_selector_confirm_deletion_message">%2$d öğe içeren %1$s klasörünü silmek istediğinizden emin misiniz?</string>
<string name="custom_selector_delete">Sil</string>
<string name="custom_selector_cancel">İptal</string>
<string name="custom_selector_folder_deleted_success">%1$s klasörü başarıyla silindi</string>
<string name="custom_selector_folder_deleted_failure">%1$s klasörü silinemedi</string>
<string name="custom_selector_error_trashing_folder_contents">Klasör içerikleri çöpe atılırken hata oluştu: %1$s</string>
<string name="custom_selector_folder_not_found_error">Kova kimliği için klasör yolu alınamadı: %1$d</string>
<string name="red_pin">Bu yerin henüz fotoğrafı yok, gidin ve çekin!</string>
<string name="green_pin">Bu yerin zaten bir resmi var.</string>
<string name="grey_pin">Şimdi bu yerin bir resime sahip olup olmadığı denetleniyor.</string>
<string name="error_while_loading">Yükleme sırasında hata oluştu</string>
<string name="no_usages_found">Hiçbir kullanım bulunamadı</string>
<string name="usages_on_commons_heading">Commons</string>
<string name="usages_on_other_wikis_heading">Diğer vikiler</string>
<string name="file_usages_container_heading">Dosya kullanımları</string>
<string name="title_activity_single_web_view">SingleWebViewActivity</string>
<string name="account">Hesap</string>
<string name="vanish_account">Kaybolma</string>
<string name="account_vanish_request_confirm_title">Hesap kaybolma uyarısı</string>
<string name="account_vanish_request_confirm">Kaybolma &lt;b&gt;son çaredir&lt;/b&gt; ve &lt;b&gt;sadece düzenlemeyi sonsuza dek durdurmak istediğinizde&lt;/b&gt; ve ayrıca mümkün olduğunca çok sayıda geçmiş ilişkinizi gizlemek için kullanılmalıdır.&lt;br/&gt;&lt;br/&gt;Wikimedia Commons\'ta hesap silme, hesap adınızı değiştirerek başkalarının katkılarınızı tanımasını önleyerek hesap kaybolması adı verilen bir işlemle yapılır. &lt;b&gt;Kaybolma, projelere yapılan katkıları tamamen anonimleştirmeyi veya kaldırmayı garanti etmez&lt;/b&gt;.</string>
<string name="caption">Altyazı</string>
<string name="caption_copied_to_clipboard">Başlık panoya kopyalandı</string>
<string name="congratulations_all_pictures_in_this_album_have_been_either_uploaded_or_marked_as_not_for_upload">Tebrikler, bu albümdeki tüm resimler yüklendi veya yüklenemez olarak işaretlendi.</string>
<string name="show_in_explore">Keşfet\'te göster</string>
<string name="show_in_nearby">Yakınlarda Göster</string>
<string name="image_tag_line_created_and_uploaded_by">Oluşturan ve yükleyen: %1$s</string>
<string name="image_tag_line_created_by_and_uploaded_by">%1$s tarafından oluşturuldu ve %2$s tarafından yüklendi</string>
</resources>

View file

@ -52,6 +52,7 @@
* ZhaoGang
* 七八年再来一次
* 予弦
* 人间百态
* 佛壁灯
* 列维劳德
* 坑触可
@ -840,6 +841,7 @@
<string name="talk">讨论</string>
<string name="write_something_about_the_item">请写一些关于项目“%1$s”的信息。所写的内容是公开可见的。</string>
<string name="does_not_exist_anymore_no_picture_can_ever_be_taken_of_it">“%1$s”已不再存在无法拍摄它的照片。</string>
<string name="is_at_a_different_place_wikidata">“%1$s”位于他处。</string>
<string name="is_at_a_different_place_please_specify_the_correct_place_below_if_possible_tell_us_the_correct_latitude_longitude">“%1$s”位于一个不同的位置。请在下方给出正确的位置可以的话请填写正确的经纬度。</string>
<string name="other_problem_or_information_please_explain_below">其他问题或信息(请在下方解释)。</string>
<string name="feedback_destination_note">您的反馈已经发布在以下wiki页面&lt;a href=\"https://commons.wikimedia.org/wiki/Commons:Mobile_app/Feedback\"&gt;Commons:Mobile app/Feedback&lt;/a&gt;</string>