Merge commit '224161caf111a15887cbc8a419763e87fe69931d'

This commit is contained in:
kyori19 2022-03-04 00:37:23 +09:00
commit 4a8fa74f79
65 changed files with 1088 additions and 229 deletions

View File

@ -20,7 +20,7 @@ We try to follow the [Kotlin Style Guide](https://developer.android.com/kotlin/s
You can check the codestyle by running `./gradlew ktlintCheck`.
### Java
Existing code in Java should follow the [Android Style Guide](https://source.android.com/source/code-style), which is what Android uses for their own source code. ```@Nullable``` and ```@NotNull``` annotations are really helpful for Kotlin interoperability. Please don't submit new features written in Kotlin.
Existing code in Java should follow the [Android Style Guide](https://source.android.com/source/code-style), which is what Android uses for their own source code. ```@Nullable``` and ```@NotNull``` annotations are really helpful for Kotlin interoperability. Please don't submit new features written in Java.
### Viewbinding
We use [Viewbinding](https://developer.android.com/topic/libraries/view-binding) to reference views. No contribution using another mechanism will be accepted.

View File

@ -150,6 +150,9 @@ dependencies {
implementation "com.github.bumptech.glide:glide:$glideVersion"
implementation "com.github.bumptech.glide:okhttp3-integration:$glideVersion"
kapt "com.github.bumptech.glide:compiler:$glideVersion"
implementation "com.github.penfeizhou.android.animation:glide-plugin:2.12.0"
implementation "io.reactivex.rxjava3:rxjava:3.0.12"
implementation "io.reactivex.rxjava3:rxandroid:3.0.0"

View File

@ -38,6 +38,7 @@ import androidx.core.view.ViewCompat
import androidx.core.view.WindowCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.WindowInsetsCompat.Type.systemBars
import androidx.core.view.updatePadding
import androidx.emoji.text.EmojiCompat
import androidx.preference.PreferenceManager
import androidx.recyclerview.widget.LinearLayoutManager
@ -146,6 +147,7 @@ class AccountActivity : BottomSheetActivity(), ActionButtonActivity, HasAndroidI
animateEmojis = sharedPrefs.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false)
hideFab = sharedPrefs.getBoolean("fabHide", false)
handleWindowInsets()
setupToolbar()
setupTabs()
setupAccountViews()
@ -250,15 +252,20 @@ class AccountActivity : BottomSheetActivity(), ActionButtonActivity, HasAndroidI
})
}
private fun setupToolbar() {
// set toolbar top margin according to system window insets
private fun handleWindowInsets() {
ViewCompat.setOnApplyWindowInsetsListener(binding.accountCoordinatorLayout) { _, insets ->
val top = insets.getInsets(systemBars()).top
val toolbarParams = binding.accountToolbar.layoutParams as ViewGroup.MarginLayoutParams
toolbarParams.topMargin = top
val bottom = insets.getInsets(systemBars()).bottom
binding.accountCoordinatorLayout.updatePadding(bottom = bottom)
WindowInsetsCompat.CONSUMED
}
}
private fun setupToolbar() {
// Setup the toolbar.
setSupportActionBar(binding.accountToolbar)
supportActionBar?.run {

View File

@ -20,8 +20,11 @@ import android.content.Context
import android.content.DialogInterface
import android.content.Intent
import android.content.res.ColorStateList
import android.graphics.Bitmap
import android.graphics.Color
import android.graphics.PorterDuff
import android.graphics.drawable.Animatable
import android.graphics.drawable.BitmapDrawable
import android.graphics.drawable.Drawable
import android.graphics.drawable.InsetDrawable
import android.net.Uri
@ -868,34 +871,70 @@ class MainActivity : BottomSheetActivity(), ActionButtonActivity, HasAndroidInje
private fun loadDrawerAvatar(avatarUrl: String, showPlaceholder: Boolean) {
val navIconSize = resources.getDimensionPixelSize(R.dimen.avatar_toolbar_nav_icon_size)
glide.asDrawable()
.load(avatarUrl)
.transform(
RoundedCorners(resources.getDimensionPixelSize(R.dimen.avatar_radius_36dp))
)
.apply {
if (showPlaceholder) {
placeholder(R.drawable.avatar_default)
}
}
.into(object : CustomTarget<Drawable>(navIconSize, navIconSize) {
val animateAvatars = preferences.getBoolean("animateGifAvatars", false)
override fun onLoadStarted(placeholder: Drawable?) {
if (placeholder != null) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(placeholder, navIconSize, navIconSize)
if (animateAvatars) {
glide.asDrawable()
.load(avatarUrl)
.transform(
RoundedCorners(resources.getDimensionPixelSize(R.dimen.avatar_radius_36dp))
)
.apply {
if (showPlaceholder) {
placeholder(R.drawable.avatar_default)
}
}
.into(object : CustomTarget<Drawable>(navIconSize, navIconSize) {
override fun onResourceReady(resource: Drawable, transition: Transition<in Drawable>?) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(resource, navIconSize, navIconSize)
}
override fun onLoadStarted(placeholder: Drawable?) {
if (placeholder != null) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(placeholder, navIconSize, navIconSize)
}
}
override fun onLoadCleared(placeholder: Drawable?) {
if (placeholder != null) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(placeholder, navIconSize, navIconSize)
override fun onResourceReady(resource: Drawable, transition: Transition<in Drawable>?) {
if (resource is Animatable) {
resource.start()
}
binding.mainToolbar.navigationIcon = FixedSizeDrawable(resource, navIconSize, navIconSize)
}
override fun onLoadCleared(placeholder: Drawable?) {
if (placeholder != null) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(placeholder, navIconSize, navIconSize)
}
}
})
} else {
glide.asBitmap()
.load(avatarUrl)
.transform(
RoundedCorners(resources.getDimensionPixelSize(R.dimen.avatar_radius_36dp))
)
.apply {
if (showPlaceholder) {
placeholder(R.drawable.avatar_default)
}
}
})
.into(object : CustomTarget<Bitmap>(navIconSize, navIconSize) {
override fun onLoadStarted(placeholder: Drawable?) {
if (placeholder != null) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(placeholder, navIconSize, navIconSize)
}
}
override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(BitmapDrawable(resources, resource), navIconSize, navIconSize)
}
override fun onLoadCleared(placeholder: Drawable?) {
if (placeholder != null) {
binding.mainToolbar.navigationIcon = FixedSizeDrawable(placeholder, navIconSize, navIconSize)
}
}
})
}
}
private fun fetchAnnouncements() {

View File

@ -261,6 +261,7 @@ public class NotificationsAdapter extends RecyclerView.Adapter {
statusDisplayOptions.useBlurhash(),
CardViewMode.NONE,
statusDisplayOptions.confirmReblogs(),
statusDisplayOptions.confirmFavourites(),
statusDisplayOptions.hideStats(),
statusDisplayOptions.animateEmojis(),
statusDisplayOptions.quoteEnabled()

View File

@ -18,8 +18,10 @@ package com.keylesspalace.tusky.adapter
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.content.ContextCompat
import androidx.emoji.text.EmojiCompat
import androidx.recyclerview.widget.RecyclerView
import com.keylesspalace.tusky.R
import com.keylesspalace.tusky.databinding.ItemPollBinding
import com.keylesspalace.tusky.entity.Emoji
import com.keylesspalace.tusky.util.BindingHolder
@ -85,13 +87,19 @@ class PollAdapter : RecyclerView.Adapter<BindingHolder<ItemPollBinding>>() {
when (mode) {
RESULT -> {
val percent = calculatePercent(option.votesCount, votersCount, voteCount)
val emojifiedPollOptionText = buildDescription(option.title, percent, resultTextView.context)
val emojifiedPollOptionText = buildDescription(option.title, percent, option.voted, resultTextView.context)
.emojify(emojis, resultTextView, animateEmojis)
resultTextView.text = EmojiCompat.get().process(emojifiedPollOptionText)
val level = percent * 100
val optionColor = if (option.voted) {
R.color.colorBackgroundHighlight
} else {
R.color.colorBackgroundAccent
}
resultTextView.background.level = level
resultTextView.background.setTint(ContextCompat.getColor(resultTextView.context, optionColor))
resultTextView.setOnClickListener(resultClickListener)
}
SINGLE -> {

View File

@ -739,11 +739,19 @@ public abstract class StatusBaseViewHolder extends RecyclerView.ViewHolder {
}
favouriteButton.setEventListener((button, buttonState) -> {
// return true to play animaion
int position = getBindingAdapterPosition();
if (position != RecyclerView.NO_POSITION) {
listener.onFavourite(!buttonState, position);
if (statusDisplayOptions.confirmFavourites()) {
showConfirmFavouriteDialog(listener, statusContent, buttonState, position);
return false;
} else {
listener.onFavourite(!buttonState, position);
return true;
}
} else {
return true;
}
return true;
});
favouriteButton.setEnabled(!isNotestock);
@ -809,6 +817,23 @@ public abstract class StatusBaseViewHolder extends RecyclerView.ViewHolder {
.show();
}
private void showConfirmFavouriteDialog(StatusActionListener listener,
String statusContent,
boolean buttonState,
int position) {
int okButtonTextId = buttonState ? R.string.action_unfavourite : R.string.action_favourite;
new AlertDialog.Builder(favouriteButton.getContext())
.setMessage(statusContent)
.setPositiveButton(okButtonTextId, (__, ___) -> {
listener.onFavourite(!buttonState, position);
if (!buttonState) {
// Play animation only when it's favourite, not unfavourite
favouriteButton.playAnimation();
}
})
.show();
}
public void setupWithStatus(StatusViewData.Concrete status, final StatusActionListener listener,
StatusDisplayOptions statusDisplayOptions) {
this.setupWithStatus(status, listener, statusDisplayOptions, null);
@ -998,7 +1023,7 @@ public abstract class StatusBaseViewHolder extends RecyclerView.ViewHolder {
for (int i = 0; i < args.length; i++) {
if (i < options.size()) {
int percent = PollViewDataKt.calculatePercent(options.get(i).getVotesCount(), poll.getVotersCount(), poll.getVotesCount());
args[i] = buildDescription(options.get(i).getTitle(), percent, context);
args[i] = buildDescription(options.get(i).getTitle(), percent, options.get(i).getVoted(), context);
} else {
args[i] = "";
}

View File

@ -85,6 +85,7 @@ class ConversationsFragment : SFragment(), StatusActionListener, Injectable, Res
useBlurhash = preferences.getBoolean("useBlurhash", true),
cardViewMode = CardViewMode.NONE,
confirmReblogs = preferences.getBoolean("confirmReblogs", true),
confirmFavourites = preferences.getBoolean("confirmFavourites", false),
hideStats = preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
animateEmojis = preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
quoteEnabled = accountManager.activeAccount?.domain in CAN_USE_QUOTE_ID,

View File

@ -17,7 +17,7 @@ class InstanceListActivity : BaseActivity(), HasAndroidInjector {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val binding = ActivityAccountListBinding.inflate(layoutInflater)
setContentView(R.layout.activity_account_list)
setContentView(binding.root)
setSupportActionBar(binding.includedToolbar.toolbar)
supportActionBar?.apply {

View File

@ -659,9 +659,12 @@ public class NotificationHelper {
StringBuilder builder = new StringBuilder(notification.getStatus().getContent());
builder.append('\n');
Poll poll = notification.getStatus().getPoll();
for(PollOption option: poll.getOptions()) {
List<PollOption> options = poll.getOptions();
for(int i = 0; i < options.size(); ++i) {
PollOption option = options.get(i);
builder.append(buildDescription(option.getTitle(),
PollViewDataKt.calculatePercent(option.getVotesCount(), poll.getVotersCount(), poll.getVotesCount()),
poll.getOwnVotes() != null && poll.getOwnVotes().contains(i),
context));
builder.append('\n');
}

View File

@ -124,8 +124,9 @@ class PreferencesActivity :
restartActivitiesOnExit = true
this.restartCurrentActivity()
}
"statusTextSize", "absoluteTimeView", "showBotOverlay", "animateGifAvatars",
"useBlurhash", "showCardsInTimelines", "confirmReblogs", "enableSwipeForTabs", "mainNavPosition", PrefKeys.HIDE_TOP_TOOLBAR, "viewPagerOffScreenLimit" -> {
"statusTextSize", "absoluteTimeView", "showBotOverlay", "animateGifAvatars", "useBlurhash",
"showCardsInTimelines", "confirmReblogs", "confirmFavourites",
"enableSwipeForTabs", "mainNavPosition", PrefKeys.HIDE_TOP_TOOLBAR, "viewPagerOffScreenLimit" -> {
restartActivitiesOnExit = true
}
"language" -> {

View File

@ -165,6 +165,13 @@ class PreferencesFragment : PreferenceFragmentCompat(), Injectable {
isSingleLineTitle = false
}
switchPreference {
setDefaultValue(false)
key = PrefKeys.CONFIRM_FAVOURITES
setTitle(R.string.pref_title_confirm_favourites)
isSingleLineTitle = false
}
switchPreference {
setDefaultValue(true)
key = PrefKeys.ENABLE_SWIPE_FOR_TABS

View File

@ -115,6 +115,7 @@ class ReportStatusesFragment : Fragment(R.layout.fragment_report_statuses), Inje
useBlurhash = preferences.getBoolean("useBlurhash", true),
cardViewMode = CardViewMode.NONE,
confirmReblogs = preferences.getBoolean("confirmReblogs", true),
confirmFavourites = preferences.getBoolean("confirmFavourites", false),
hideStats = preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
animateEmojis = preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
quoteEnabled = accountManager.activeAccount?.domain in CAN_USE_QUOTE_ID,

View File

@ -64,6 +64,7 @@ class SearchNotestockFragment : SearchFragment<Pair<Status, StatusViewData.Concr
useBlurhash = preferences.getBoolean("useBlurhash", true),
cardViewMode = CardViewMode.NONE,
confirmReblogs = preferences.getBoolean("confirmReblogs", false),
confirmFavourites = preferences.getBoolean("confirmFavourites", false),
hideStats = preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
animateEmojis = preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
quoteEnabled = viewModel.quoteEnabled

View File

@ -81,6 +81,7 @@ class SearchStatusesFragment : SearchFragment<Pair<Status, StatusViewData.Concre
useBlurhash = preferences.getBoolean("useBlurhash", true),
cardViewMode = CardViewMode.NONE,
confirmReblogs = preferences.getBoolean("confirmReblogs", true),
confirmFavourites = preferences.getBoolean("confirmFavourites", false),
hideStats = preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
animateEmojis = preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
quoteEnabled = viewModel.quoteEnabled,

View File

@ -68,6 +68,7 @@ public final class TimelineAdapter extends RecyclerView.Adapter {
statusDisplayOptions.useBlurhash(),
statusDisplayOptions.cardViewMode(),
statusDisplayOptions.confirmReblogs(),
statusDisplayOptions.confirmFavourites(),
statusDisplayOptions.hideStats(),
statusDisplayOptions.animateEmojis(),
statusDisplayOptions.quoteEnabled()

View File

@ -136,6 +136,7 @@ class TimelineFragment :
)
) CardViewMode.INDENTED else CardViewMode.NONE,
confirmReblogs = preferences.getBoolean(PrefKeys.CONFIRM_REBLOGS, true),
confirmFavourites = preferences.getBoolean(PrefKeys.CONFIRM_FAVOURITES, false),
hideStats = preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
animateEmojis = preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
quoteEnabled = CAN_USE_QUOTE_ID.contains(accountManager.activeAccount?.domain),

View File

@ -87,9 +87,9 @@ data class Account(
}
data class AccountSource(
val privacy: Status.Visibility,
val sensitive: Boolean,
val note: String,
val privacy: Status.Visibility?,
val sensitive: Boolean?,
val note: String?,
val fields: List<StringField>?
)

View File

@ -11,7 +11,8 @@ data class Poll(
@SerializedName("votes_count") val votesCount: Int,
@SerializedName("voters_count") val votersCount: Int?, // nullable for compatibility with Pleroma
val options: List<PollOption>,
val voted: Boolean
val voted: Boolean,
@SerializedName("own_votes") val ownVotes: List<Int>?
) {
fun votedCopy(choices: List<Int>): Poll {

View File

@ -258,6 +258,7 @@ public class NotificationsFragment extends SFragment implements
preferences.getBoolean("useBlurhash", true),
CardViewMode.NONE,
preferences.getBoolean("confirmReblogs", true),
preferences.getBoolean("confirmFavourites", false),
preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
Arrays.asList(ComposeViewModelKt.getCAN_USE_QUOTE_ID()).contains(accountManager.getActiveAccount().getDomain())

View File

@ -142,6 +142,7 @@ public final class ViewThreadFragment extends SFragment implements
CardViewMode.INDENTED :
CardViewMode.NONE,
preferences.getBoolean("confirmReblogs", true),
preferences.getBoolean("confirmFavourites", false),
preferences.getBoolean(PrefKeys.WELLBEING_HIDE_STATS_POSTS, false),
preferences.getBoolean(PrefKeys.ANIMATE_CUSTOM_EMOJIS, false),
Arrays.asList(ComposeViewModelKt.getCAN_USE_QUOTE_ID()).contains(accountManager.getActiveAccount().getDomain())

View File

@ -21,6 +21,7 @@ import android.annotation.SuppressLint
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.text.method.ScrollingMovementMethod
import android.view.KeyEvent
import android.view.LayoutInflater
import android.view.View
@ -79,6 +80,7 @@ class ViewVideoFragment : ViewMediaFragment() {
) {
binding.mediaDescription.text = description
binding.mediaDescription.visible(showingDescription)
binding.mediaDescription.movementMethod = ScrollingMovementMethod()
binding.videoView.transitionName = url
binding.videoView.setVideoPath(url)
@ -125,7 +127,10 @@ class ViewVideoFragment : ViewMediaFragment() {
val videoWidth = mp.videoWidth.toFloat()
val videoHeight = mp.videoHeight.toFloat()
if (containerWidth / containerHeight > videoWidth / videoHeight) {
if (isAudio) {
binding.videoView.layoutParams.height = 1
binding.videoView.layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT
} else if (containerWidth / containerHeight > videoWidth / videoHeight) {
binding.videoView.layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT
binding.videoView.layoutParams.width = ViewGroup.LayoutParams.WRAP_CONTENT
} else {

View File

@ -29,9 +29,16 @@ class FilterModel @Inject constructor() {
}
val spoilerText = status.actionableStatus.spoilerText
val attachmentsDescriptions = status.attachments
.mapNotNull { it.description }
return (
matcher.reset(status.actionableStatus.content).find() ||
spoilerText.isNotEmpty() && matcher.reset(spoilerText).find()
(spoilerText.isNotEmpty() && matcher.reset(spoilerText).find()) ||
(
attachmentsDescriptions.isNotEmpty() &&
matcher.reset(attachmentsDescriptions.joinToString("\n")).find()
)
)
}

View File

@ -30,6 +30,7 @@ object PrefKeys {
const val SHOW_NOTIFICATIONS_FILTER = "showNotificationsFilter"
const val SHOW_CARDS_IN_TIMELINES = "showCardsInTimelines"
const val CONFIRM_REBLOGS = "confirmReblogs"
const val CONFIRM_FAVOURITES = "confirmFavourites"
const val ENABLE_SWIPE_FOR_TABS = "enableSwipeForTabs"
const val ANIMATE_CUSTOM_EMOJIS = "animateCustomEmojis"
const val USE_QUICK_TOOT = "useQuickToot"

View File

@ -0,0 +1,7 @@
package com.keylesspalace.tusky.util
import com.bumptech.glide.annotation.GlideModule
import com.bumptech.glide.module.AppGlideModule
@GlideModule
class GlideModule : AppGlideModule()

View File

@ -15,6 +15,8 @@ data class StatusDisplayOptions(
val cardViewMode: CardViewMode,
@get:JvmName("confirmReblogs")
val confirmReblogs: Boolean,
@get:JvmName("confirmFavourites")
val confirmFavourites: Boolean,
@get:JvmName("hideStats")
val hideStats: Boolean,
@get:JvmName("animateEmojis")

View File

@ -23,6 +23,7 @@ import android.view.View
import android.widget.ImageView
import android.widget.TextView
import androidx.annotation.DrawableRes
import androidx.core.content.ContextCompat
import com.bumptech.glide.Glide
import com.keylesspalace.tusky.R
import com.keylesspalace.tusky.entity.Attachment
@ -310,13 +311,19 @@ class StatusViewHelper(private val itemView: View) {
if (i < options.size) {
val percent = calculatePercent(options[i].votesCount, poll.votersCount, poll.votesCount)
val pollOptionText = buildDescription(options[i].title, percent, pollResults[i].context)
val pollOptionText = buildDescription(options[i].title, percent, options[i].voted, pollResults[i].context)
pollResults[i].text = pollOptionText.emojify(emojis, pollResults[i], animateEmojis)
pollResults[i].visibility = View.VISIBLE
val level = percent * 100
val optionColor = if (options[i].voted) {
R.color.colorBackgroundHighlight
} else {
R.color.colorBackgroundAccent
}
pollResults[i].background.level = level
pollResults[i].background.setTint(ContextCompat.getColor(pollResults[i].context, optionColor))
} else {
pollResults[i].visibility = View.GONE
}

View File

@ -39,7 +39,8 @@ data class PollViewData(
data class PollOptionViewData(
val title: String,
var votesCount: Int,
var selected: Boolean
var selected: Boolean,
var voted: Boolean
)
fun calculatePercent(fraction: Int, totalVoters: Int?, totalVotes: Int): Int {
@ -51,10 +52,14 @@ fun calculatePercent(fraction: Int, totalVoters: Int?, totalVotes: Int): Int {
}
}
fun buildDescription(title: String, percent: Int, context: Context): Spanned {
return SpannableStringBuilder(context.getString(R.string.poll_percent_format, percent).parseAsHtml())
.append(" ")
.append(title)
fun buildDescription(title: String, percent: Int, voted: Boolean, context: Context): Spanned {
val builder = SpannableStringBuilder(context.getString(R.string.poll_percent_format, percent).parseAsHtml())
if (voted) {
builder.append("")
} else {
builder.append(" ")
}
return builder.append(title)
}
fun Poll?.toViewData(): PollViewData? {
@ -66,15 +71,16 @@ fun Poll?.toViewData(): PollViewData? {
multiple = multiple,
votesCount = votesCount,
votersCount = votersCount,
options = options.map { it.toViewData() },
voted = voted
options = options.mapIndexed { index, option -> option.toViewData(ownVotes?.contains(index) == true) },
voted = voted,
)
}
fun PollOption.toViewData(): PollOptionViewData {
fun PollOption.toViewData(voted: Boolean): PollOptionViewData {
return PollOptionViewData(
title = title,
votesCount = votesCount,
selected = false
selected = false,
voted = voted
)
}

View File

@ -20,6 +20,7 @@
android:textAlignment="center"
android:textColor="#eee"
android:textSize="?attr/status_text_medium"
android:scrollbars="vertical"
app:layout_constraintTop_toTopOf="parent"
tools:text="Some media description" />

View File

@ -141,6 +141,8 @@
android:importantForAccessibility="no"
android:textSize="?attr/status_text_medium"
android:visibility="gone"
android:maxLines="10"
android:ellipsize="end"
app:drawableTint="?android:attr/textColorTertiary"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@ -155,6 +157,8 @@
android:importantForAccessibility="no"
android:textSize="?attr/status_text_medium"
android:visibility="gone"
android:maxLines="10"
android:ellipsize="end"
app:drawableTint="?android:attr/textColorTertiary"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/status_media_label_0" />
@ -169,6 +173,8 @@
android:importantForAccessibility="no"
android:textSize="?attr/status_text_medium"
android:visibility="gone"
android:maxLines="10"
android:ellipsize="end"
app:drawableTint="?android:attr/textColorTertiary"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/status_media_label_1" />
@ -183,6 +189,8 @@
android:importantForAccessibility="no"
android:textSize="?attr/status_text_medium"
android:visibility="gone"
android:maxLines="10"
android:ellipsize="end"
app:drawableTint="?android:attr/textColorTertiary"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/status_media_label_2" />

View File

@ -215,6 +215,11 @@
<string name="notification_summary_medium">%1$s, %2$s, و %3$s</string>
<string name="notification_summary_small">%1$s و %2$s</string>
<plurals name="notification_title_summary">
<item quantity="zero">%d تفاعلات جديدة</item>
<item quantity="one">تفاعل جديد</item>
<item quantity="two">تفاعلين جديدين</item>
<item quantity="few">%d تفاعلات جديدة</item>
<item quantity="many">%d تفاعلات جديدة</item>
<item quantity="other">%d تفاعلات جديدة</item>
</plurals>
<string name="description_account_locked">حساب مقفل</string>
@ -330,6 +335,11 @@
<string name="conversation_2_recipients">%1$s و %2$s</string>
<string name="conversation_more_recipients">%1$s و %2$s و %3$d آخَرون</string>
<plurals name="max_tab_number_reached">
<item quantity="zero">لقد بلغت الحد الأقصى مِن الألسنة %1$d</item>
<item quantity="one">لقد بلغت الحد الأقصى مِن الألسنة %1$d</item>
<item quantity="two">لقد بلغت الحد الأقصى مِن الألسنة %1$d</item>
<item quantity="few">لقد بلغت الحد الأقصى مِن الألسنة %1$d</item>
<item quantity="many">لقد بلغت الحد الأقصى مِن الألسنة %1$d</item>
<item quantity="other">لقد بلغت الحد الأقصى مِن الألسنة %1$d</item>
</plurals>
<string name="description_status_media">الوسائط: %s </string>
@ -508,4 +518,26 @@
<string name="action_unmute_notifications_desc">إلغاء كتم إشعارات %s</string>
<string name="action_unmute_desc">إلغاء كتم %s</string>
<string name="pref_title_hide_top_toolbar">إخفاء عنوان شريط الأدوات العلوي</string>
<string name="title_announcements">الاعلانات</string>
<string name="dialog_delete_list_warning">أتريد حقا حذف القائمة %s؟</string>
<string name="drafts_toot_failed_to_send">فشلت عملية إرسال التبويق!</string>
<string name="draft_deleted">حُذفَت المسودة</string>
<string name="action_subscribe_account">اشترك</string>
<string name="action_unsubscribe_account">إلغاء الإشتراك</string>
<string name="notification_subscription_format">نشر %s للتوّ</string>
<string name="action_delete_conversation">احذف المحادثة</string>
<string name="dialog_delete_conversation_warning">هل تريد حذف هذه المحادثة؟</string>
<string name="notification_subscription_name">تبويقات جديدة</string>
<string name="status_media_attachments">مرفقات</string>
<string name="label_duration">المدة</string>
<string name="no_announcements">لا توجد إعلانات.</string>
<string name="account_note_hint">ملاحظتك الخاصة عن هذا الحساب</string>
<string name="account_note_saved">تم حفظها!</string>
<string name="review_notifications">راجع الإشعارات</string>
<string name="status_media_audio">صوت</string>
<string name="drafts_toot_reply_removed">لقد حُذِف التبويق الذي حررت من أجله مسودة الرد</string>
<string name="pref_title_notification_filter_subscriptions">شخص ما أنا مشترك في حسابه قد نشر تبويقا جديدا</string>
<string name="pref_title_animate_custom_emojis">حرّك الإيموجيات المخصصة</string>
<string name="wellbeing_hide_stats_posts">إخفاء الإحصائيات الكمية عن المنشورات</string>
<string name="wellbeing_hide_stats_profile">إخفاء الإحصائيات الكمية عن الملفات التعريفية</string>
</resources>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -204,6 +204,7 @@
<string name="notification_summary_medium">%1$s, %2$s, y %3$s</string>
<string name="notification_summary_small">%1$s y %2$s</string>
<plurals name="notification_title_summary">
<item quantity="one">%d nueva interacción</item>
<item quantity="other">%d nuevas interacciones</item>
</plurals>
<string name="description_account_locked">Cuenta protegida</string>
@ -313,6 +314,7 @@
<string name="conversation_2_recipients">%1$s y %2$s</string>
<string name="conversation_more_recipients">%1$s, %2$s y %3$d más</string>
<plurals name="max_tab_number_reached">
<item quantity="one">máximo de %1$d pestaña alcanzada</item>
<item quantity="other">máximo de %1$d pestañas alcanzadas</item>
</plurals>
<string name="action_mentions">Menciones</string>
@ -471,7 +473,7 @@
<string name="hashtags">Etiquetas</string>
<string name="add_hashtag_title">Añadir etiqueta</string>
<string name="notification_follow_request_format">%s solicita seguirte</string>
<string name="pref_main_nav_position_option_bottom">Fondo</string>
<string name="pref_main_nav_position_option_bottom">Abajo</string>
<string name="pref_main_nav_position_option_top">Arriba</string>
<string name="pref_main_nav_position">Posición de navegación principal</string>
<string name="pref_title_gradient_for_media">Mostrar degradados colorido para los medios ocultos</string>
@ -487,7 +489,8 @@
<string name="title_announcements">Anuncios</string>
<string name="notification_subscription_format">%s recién publicado</string>
<plurals name="error_upload_max_media_reached">
<item quantity="other">No puedes cargar más de %1$d archivos adjuntos multimedia.</item>
<item quantity="one">No puedes cargar más de %1$d archivo multimedia adjunto.</item>
<item quantity="other">No puedes cargar más de %1$d archivos multimedia adjuntos.</item>
</plurals>
<string name="wellbeing_hide_stats_profile">Esconder las estadísticas cuantitativas de los perfiles</string>
<string name="wellbeing_hide_stats_posts">Esconder las estadísticas cuantitativas de las publicaciones</string>
@ -498,7 +501,7 @@
<string name="pref_title_notification_filter_subscriptions">alguien al que estoy suscrito publicó un nuevo toot</string>
<string name="wellbeing_mode_notice">Algunas informaciones que podríam afectar tu bienestar van a ser ocultas. Esto incluye:
\n
\n- Notificaciones de favoritos, impulsos e seguidores
\n- Notificaciones de favoritos, impulsos y seguidores
\n- Conteo de favoritos e impulsos en toots
\n- Estadísticas de seguidores e toots en perfiles
\n
@ -512,5 +515,13 @@
<string name="label_duration">Duración</string>
<string name="status_media_attachments">Adjuntos</string>
<string name="status_media_audio">Audio</string>
<string name="limit_notifications">Limitar notificaciones de cronología</string>
<string name="limit_notifications">Limitar cronología de notificaciones</string>
<string name="action_unbookmark">Quitar marcador</string>
<string name="follow_requests_info">Aunque su cuenta no está bloqueada, el personal de %1$s pensó que podría querer revisar las solicitudes de seguimiento de estas cuentas manualmente.</string>
<string name="action_subscribe_account">Suscribir</string>
<string name="dialog_delete_conversation_warning">¿Eliminar esta conversación\?</string>
<string name="pref_title_animate_custom_emojis">Animar emojis personalizados</string>
<string name="action_unsubscribe_account">Darse de baja</string>
<string name="action_delete_conversation">Eliminar conversación</string>
<string name="pref_title_confirm_favourites">Mostrar diálogo de confirmación antes de marcar como favorito</string>
</resources>

View File

@ -2,7 +2,7 @@
<resources>
<string name="error_generic">Errorea gertatu da.</string>
<string name="error_empty">Eremu hau ezin da hutsik egon.</string>
<string name="error_invalid_domain">Domeinu izen okerra.</string>
<string name="error_invalid_domain">Domeinu baliogabea sartu da</string>
<string name="error_failed_app_registration">Akatsa saioa hasterakoan.</string>
<string name="error_no_web_browser_found">Ez da web nabigatzailerik aurkitu.</string>
<string name="error_authorization_unknown">Identifikatu gabeko baimentza akatsa gertatu da.</string>
@ -104,10 +104,10 @@
<string name="send_media_to">Partekatu media hona…</string>
<string name="confirmation_reported">Bidalia!</string>
<string name="confirmation_unblocked">Erabiltzailea desblokeatuta</string>
<string name="confirmation_unmuted">Iada erabiltzailea ez dago isilarazia.</string>
<string name="confirmation_unmuted">Erabiltzailea isilgabetuta</string>
<string name="status_sent">Bidalia!</string>
<string name="status_sent_long">Erantzuna ongi bidali da.</string>
<string name="hint_domain">Instantzia hautatu</string>
<string name="hint_domain">Zein instantzia\?</string>
<string name="hint_compose">Zer duzu buruan?</string>
<string name="hint_content_warning">Edukiaren abisua</string>
<string name="hint_display_name">Agertuko den izena</string>
@ -119,13 +119,13 @@
<string name="label_header">Goiburua</string>
<string name="link_whats_an_instance">Zer da instantzia?</string>
<string name="login_connection">Konektatzen…</string>
<string name="dialog_whats_an_instance"> Sartu hemen helbidea edo mastodon.eus, mastodon.jalgi.eus, mastodon.social bezalako <a href="https://instances.social">edozein instantzia</a>,
<string name="dialog_whats_an_instance">Edozein instantziaren helbidea edo domeinua hemen sar daiteke, hala nola mastodon.eus, mastodon.jalgi.eus, mastodon.social eta <a href="https://instances.social">gehiago!</a>,
\n
\n Oraindik ez baduzu konturik, instantziaren izena sartu eta bertan kontua sortu dezakezu.
\nOraindik konturik ez baduzu, sartu nahi duzun instantziaren izena sar dezakezu eta bertan sortu kontua.
\n
\nInstantzia zure kontua dagoen gunea da, baino beste instantzietako erabiltzaileak zurean egongo balira bezala jarraitu ditzakezu.
\nInstantzia zure kontua ostatatzen den leku bakarra da, baina beste instantzia batzuetako jendearekin erraz komunikatu eta jarrai dezakezu gune berean egongo bazina bezala.
\n
\nInformazio gehiago <a href="https://joinmastodon.org">joinmastodon.org</a> helbidean topatuko duzu. </string>
\nInformazio gehiago <a href="https://joinmastodon.org">joinmastodon.org</a> webgunean aurki daiteke. </string>
<string name="dialog_title_finishing_media_upload">Mediaren igoera bukatzen</string>
<string name="dialog_message_uploading_media">Igotzen…</string>
<string name="dialog_download_image">Jaitsi</string>
@ -142,7 +142,7 @@
<string name="pref_title_notification_alert_sound">Soinuarekin jakinarazi</string>
<string name="pref_title_notification_alert_vibrate">Bibrazioarekin jakinarazi</string>
<string name="pref_title_notification_alert_light">Led-arekin jakinarazi</string>
<string name="pref_title_notification_filters">Noiz jakinarazi:</string>
<string name="pref_title_notification_filters">Jakinarazi noiz</string>
<string name="pref_title_notification_filter_mentions">Aipatzen naute</string>
<string name="pref_title_notification_filter_follows">Jarraitzen didate</string>
<string name="pref_title_notification_filter_reblogs">Bultzatzen naute</string>
@ -193,6 +193,7 @@
<string name="notification_summary_medium">%1$s, %2$s eta %3$s</string>
<string name="notification_summary_small">%1$s eta %2$s</string>
<plurals name="notification_title_summary">
<item quantity="one">interakzio berri %d</item>
<item quantity="other">%d interakzio berri</item>
</plurals>
<string name="description_account_locked">Kontu babestua</string>
@ -245,7 +246,7 @@
<string name="lock_account_label">Kontua babestu</string>
<string name="lock_account_label_description">Jarraitzaileak eskuz onartu beharko dituzu</string>
<string name="compose_save_draft">Zirriborroa gorde?</string>
<string name="send_toot_notification_title">Tuta ezabatzen…</string>
<string name="send_toot_notification_title">Tuta bidaltzen…</string>
<string name="send_toot_notification_error_title">Errorea tuta bidaltzerakoan</string>
<string name="send_toot_notification_channel_name">Tuta bidaltzen</string>
<string name="send_toot_notification_cancel_title">Bidalketa ezeztatua</string>
@ -308,7 +309,7 @@
<string name="title_links_dialog">Estekak</string>
<string name="action_open_media_n">Ireki media #%d</string>
<string name="action_open_as">%s bezala ireki</string>
<string name="action_share_as">... bezala partekatu</string>
<string name="action_share_as"> bezala partekatu</string>
<string name="download_media">Media jaisten</string>
<string name="downloading_media">Media jaisten</string>
<string name="confirmation_domain_unmuted">%s ez dago ezkutatua</string>
@ -353,12 +354,12 @@
<string name="license_cc_by_4">CC-BY 4.0</string>
<string name="license_cc_by_sa_4">CC-BY-SA 4.0</string>
<plurals name="favs">
<item quantity="one">&lt;b&gt;%1$s&lt;/b&gt; Gogoko</item>
<item quantity="other">&lt;b&gt;%1$s&lt;/b&gt; Gogoko</item>
<item quantity="one">Gogoko <b>%1$s</b></item>
<item quantity="other"><b>%1$s</b> Gogoko</item>
</plurals>
<plurals name="reblogs">
<item quantity="one">&lt;b&gt;%s&lt;/b&gt; Bultzada</item>
<item quantity="other">&lt;b&gt;%s&lt;/b&gt; Bultzada</item>
<item quantity="one">Bultzada <b>%s</b></item>
<item quantity="other"><b>%s</b> Bultzada</item>
</plurals>
<string name="title_reblogged_by">Bultzatuta</string>
<string name="title_favourited_by">Gogokoa</string>
@ -366,6 +367,7 @@
<string name="conversation_2_recipients">%1$s eta %2$s</string>
<string name="conversation_more_recipients">%1$s, %2$s eta %3$d gehiago</string>
<plurals name="max_tab_number_reached">
<item quantity="one">gehienezko %1$d fitxa iritsita</item>
<item quantity="other">gehienezko %1$d fitxa iritsita</item>
</plurals>
<string name="description_status_media">Media: %s</string>
@ -390,7 +392,7 @@
<string name="poll_info_format"> <!-- 15 boto • Ordu 1 geratzen da --> %1$s • %2$s</string>
<plurals name="poll_info_votes">
<item quantity="one">Boto %s</item>
<item quantity="other">%s Boto</item>
<item quantity="other">%s boto</item>
</plurals>
<string name="poll_info_time_absolute">%s amaitzen da</string>
<string name="poll_info_closed">Itxita</string>
@ -454,7 +456,7 @@
<string name="action_mute_conversation">Mututu elkarrizketa</string>
<string name="notification_follow_request_format">%s(e)k zu jarraitzeko eskatu dizu</string>
<string name="hashtags">Traolak</string>
<string name="dialog_mute_hide_notifications">Ez erakutsi jakinarazpenak</string>
<string name="dialog_mute_hide_notifications">Jakinarazpenak ezkutatu</string>
<string name="action_unmute_desc">Desmututu %s</string>
<string name="pref_title_hide_top_toolbar">Ezkutatu goiko tresna-barraren izenburua</string>
<string name="pref_title_confirm_reblogs">Erakutsi berrespen-abisua tuta bultzatu aurretik</string>
@ -474,4 +476,49 @@
<string name="action_unmute_domain">Desmututu %s</string>
<string name="action_mute_notifications_desc">Mututu %s(r)en jakinarazpenak</string>
<string name="action_unmute_notifications_desc">Desmututu %s(r)en jakinarazpenak</string>
<string name="review_notifications">Jakinarazpenak berrikusi</string>
<string name="pref_title_confirm_favourites">Erakutsi baieztapen elkarrizketa-koadroa gogokoenetara gehitu aurretik</string>
<string name="follow_requests_info">Zure kontua blokeatuta ez badago ere, %1$s-ko langileek kontu hauetako eskaerak eskuz berrikusi nahi dituzula pentsatu dute.</string>
<string name="pref_title_notification_filter_subscriptions">harpidedun naizen norbaitek tut berria argitaratu du</string>
<string name="status_media_attachments">Eranskinak</string>
<string name="dialog_delete_list_warning">Ziur %s zerrenda ezabatu nahi duzula\?</string>
<string name="status_media_audio">Audioa</string>
<string name="action_subscribe_account">Harpidetu</string>
<string name="dialog_delete_conversation_warning">Elkarrizketa ezabatu nahi duzu\?</string>
<string name="pref_title_animate_custom_emojis">Animatu emoji pertsonalizatuak</string>
<string name="drafts_failed_loading_reply">Erantzunaren informazioa ezin izan da kargatu</string>
<string name="wellbeing_hide_stats_profile">Profiletan estatistika kuantitatiboak ezkutatu</string>
<string name="draft_deleted">Zirriborroa ezabatu da</string>
<string name="drafts_toot_reply_removed">Erantzuna idatzi zenuen tuta ezabatu da</string>
<string name="pref_title_wellbeing_mode">Ongizatea</string>
<plurals name="error_upload_max_media_reached">
<item quantity="one">Ezin duzu multimedia eranskin %1$d baino gehiago kargatu.</item>
<item quantity="other">Ezin dituzu %1$d multimedia eranskin baino gehiago kargatu.</item>
</plurals>
<string name="limit_notifications">Denbora-lerroaren jakinarazpenak mugatu</string>
<string name="label_duration">Iraupena</string>
<string name="duration_indefinite">Zehaztugabea</string>
<string name="action_unsubscribe_account">Harpidetza kendu</string>
<string name="action_delete_conversation">Elkarrizketa ezabatu</string>
<string name="no_announcements">Ez daude iragarkirik.</string>
<string name="notification_subscription_format">%s argitaratu berri du</string>
<string name="account_note_saved">Gordeta!</string>
<string name="notification_subscription_name">Tut berriak</string>
<plurals name="poll_info_people">
<item quantity="one">Pertsona %s</item>
<item quantity="other">%s pertsona</item>
</plurals>
<string name="title_announcements">Iragarpenak</string>
<string name="notification_subscription_description">Jakinarazpenak harpidetuta zauden norbaitek tut berria argitaratu duenean</string>
<string name="account_note_hint">Kontu honi buruzko zure ohar pribatua</string>
<string name="drafts_toot_failed_to_send">Tut honek ezin izan du bidali!</string>
<string name="wellbeing_mode_notice">Zure ongizate mentalean eragina izan dezaketen zenbait informazio ezkutatuta egongo dira. Honek honako hauek ditu:
\n
\n - Gogokoak, bultzadak eta jarraitzaileen jakinarazpenak
\n - Tutetan gogokoen eta bultzaden kopurua
\n - Profiletan jarraitzaileen eta argitalpenen estatistikak
\n
\nPush-jakinarazpenek ez dute eraginik izango, baina jakinarazpenen hobespenak eskuz berrikus ditzakezu.</string>
<string name="wellbeing_hide_stats_posts">Mezuetan estatistika kuantitatiboak ezkutatu</string>
<string name="action_unbookmark">Laster-marka kendu</string>
</resources>

View File

@ -515,4 +515,6 @@
</plurals>
<string name="duration_indefinite">نامعیّن</string>
<string name="follow_requests_info">با این که حسابتان قفل نیست، کارکنان %1$s فکر کردند ممکن است بخواهید درخواست‌های پی‌گیری از این حساب‌ها را دستی بازبینی کنید.</string>
<string name="dialog_delete_conversation_warning">حذف این گفت‌وگو؟</string>
<string name="action_delete_conversation">حذف گفت‌وگو</string>
</resources>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -0,0 +1,269 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="error_invalid_domain">Ûnjildich domein ynfierd</string>
<string name="error_empty">Dit mei net leech wêze.</string>
<string name="system_default">Systeem standert</string>
<string name="emoji_style">Emoji styl</string>
<string name="copy_to_clipboard_success">Nei it klemboerd kopiearre</string>
<string name="action_compose_shortcut">Gearstelle</string>
<string name="send_toot_notification_cancel_title">Ferstjoeren ôfbrutsen</string>
<string name="send_toot_notification_channel_name">Toots oan it ferstjoeren</string>
<string name="send_toot_notification_error_title">Flater by it ferstjoeren fan toot</string>
<string name="send_toot_notification_title">Toot oan it ferstjoeren…</string>
<string name="compose_save_draft">Skets bewarje\?</string>
<string name="action_remove">Fuortsmite</string>
<string name="action_set_caption">Ûnderskrift pleatse</string>
<string name="error_failed_set_caption">Koe ûnderskrift net pleatse</string>
<string name="action_add_to_list">Account oan de list tafoegje</string>
<string name="hint_search_people_list">Sykje om minsken dy\'t jo folgje</string>
<string name="action_edit_list">Pas de list oan</string>
<string name="action_delete_list">Smyt de list fuort</string>
<string name="action_rename_list">Neam de list om</string>
<string name="action_create_list">Meitsje in list oan</string>
<string name="error_delete_list">Koe list net fuortsmite</string>
<string name="error_rename_list">Koe list net omneame</string>
<string name="error_create_list">Koe list net oanmeitsje</string>
<string name="title_lists">Listen</string>
<string name="action_lists">Listen</string>
<string name="add_account_description">Nij Mastodon Account Tafoegje</string>
<string name="add_account_name">Account Tafoegje</string>
<string name="filter_dialog_update_button">Fernije</string>
<string name="filter_dialog_remove_button">Fuortsmite</string>
<string name="filter_edit_dialog_title">Filter oanpasse</string>
<string name="filter_addition_dialog_title">Filter tafoegje</string>
<string name="pref_title_thread_filter_keywords">Petearen</string>
<string name="load_more_placeholder_text">mear lade</string>
<string name="replying_to">Oan it reagearren op @%s</string>
<string name="title_media">Media</string>
<string name="pref_title_alway_show_sensitive_media">Altyd gefoeliche ynhâld sjen litte</string>
<string name="follows_you">Folget jo</string>
<string name="abbreviated_years_ago">%dy</string>
<string name="abbreviated_in_seconds">oer %ds</string>
<string name="abbreviated_in_minutes">oer %dm</string>
<string name="abbreviated_in_hours">oer %dh</string>
<string name="abbreviated_in_days">oer %dd</string>
<string name="status_media_attachments">Taheaksels</string>
<string name="status_media_audio">Lûd</string>
<string name="status_media_video">Fideo</string>
<string name="status_media_images">Ôfbyldingen</string>
<string name="status_share_link">Keppeling nei toot diele</string>
<string name="status_share_content">Ynhâld fan toot diele</string>
<string name="about_tusky_version">Tusky %s</string>
<string name="about_title_activity">Oer</string>
<plurals name="notification_title_summary">
<item quantity="one">%d nije ynteraksje</item>
<item quantity="other">%d nije ynteraksjes</item>
</plurals>
<string name="notification_summary_small">%1$s en %2$s</string>
<string name="notification_summary_medium">%1$s, %2$s, en %3$s</string>
<string name="notification_subscription_name">Nije toots</string>
<string name="notification_favourite_name">Favoriten</string>
<string name="notification_follow_request_name">Folgfersyken</string>
<string name="notification_follow_name">Nije Folgers</string>
<string name="status_text_size_largest">Grutst</string>
<string name="status_text_size_large">Grut</string>
<string name="status_text_size_medium">Gewoan</string>
<string name="status_text_size_small">Lyts</string>
<string name="status_text_size_smallest">Lytst</string>
<string name="post_privacy_followers_only">Allinnich folgers</string>
<string name="post_privacy_public">Iepenbier</string>
<string name="pref_main_nav_position_option_bottom">Ûnder</string>
<string name="pref_main_nav_position_option_top">Boppe</string>
<string name="pref_failed_to_sync">Koe ynstellingen net syngronisearje</string>
<string name="pref_default_media_sensitivity">Media altyd as gefoelich oanmerke</string>
<string name="pref_title_http_proxy_port">HTTP proksje poarte</string>
<string name="pref_title_http_proxy_server">HTTP proksje tsjinner</string>
<string name="pref_title_http_proxy_enable">HTTP proksje ynskeakelje</string>
<string name="pref_title_http_proxy_settings">HTTP proksje</string>
<string name="pref_title_proxy_settings">Proksje</string>
<string name="pref_title_show_media_preview">Media foarfertoaningen delhelje</string>
<string name="pref_title_show_replies">Reaksjes sjen litte</string>
<string name="pref_title_status_tabs">Ljepblêden</string>
<string name="pref_title_language">Taal</string>
<string name="pref_title_browser_settings">Webblêder</string>
<string name="app_theme_system">Systeem Opmaak Brûke</string>
<string name="app_theme_auto">Automatysk as de sinne ûnder giet</string>
<string name="app_theme_black">Swart</string>
<string name="app_theme_light">Ljocht</string>
<string name="app_them_dark">Tsjuster</string>
<string name="pref_title_timeline_filters">Filters</string>
<string name="pref_title_app_theme">Applikaasje Tema</string>
<string name="pref_title_appearance_settings">Uterlik</string>
<string name="pref_title_notification_filter_subscriptions">Ien dy\'t ik folgje hat in nije toot pleatst</string>
<string name="pref_title_notification_filter_favourites">Myn berjochten bin as favoryt oanmurken</string>
<string name="pref_title_notification_filter_follow_requests">Folgfersyk</string>
<string name="pref_title_notification_filter_follows">Folgers</string>
<string name="pref_title_notification_filter_mentions">beneamd</string>
<string name="pref_title_notification_alert_light">Op\'e hichte steld wurde mei in ljochtsje</string>
<string name="pref_title_notification_alert_vibrate">Op\'e hichte steld wurde mei in trilling</string>
<string name="pref_title_notification_alert_sound">Op\'e hichte stelt wurde mei in lûdsje</string>
<string name="pref_title_notifications_enabled">Notifikaasjes</string>
<string name="pref_title_edit_notification_settings">Notifikaasjes</string>
<string name="dialog_mute_hide_notifications">Notifikaasjes ferbergje</string>
<string name="dialog_mute_warning">\@%s negearje\?</string>
<string name="dialog_block_warning">\@%s blokkearje\?</string>
<string name="mute_domain_warning_dialog_ok">Folsleine domein ferbergje</string>
<string name="dialog_delete_conversation_warning">Dit petear fuortsmite\?</string>
<string name="dialog_redraft_toot_warning">Dizze toot fuortsmite en opnij opstelle\?</string>
<string name="dialog_delete_toot_warning">Dizze toot fuortsmite\?</string>
<string name="dialog_unfollow_warning">Dit account net mear folgje\?</string>
<string name="dialog_message_cancel_follow_request">Folgfersyk ynlûke\?</string>
<string name="dialog_download_image">Delhelje</string>
<string name="dialog_message_uploading_media">Oan it uploaden…</string>
<string name="dialog_title_finishing_media_upload">It Uploaden fan Media oan it Ôfrûnjen</string>
<string name="login_connection">Oan it ferbinen…</string>
<string name="label_quick_reply">Reagearre…</string>
<string name="search_no_results">Gjin resultaten</string>
<string name="hint_search">Sykje…</string>
<string name="hint_content_warning">Ynhâld warskôging</string>
<string name="hint_compose">Wat bard der\?</string>
<string name="status_sent_long">Reaksje mei sukses ferstjoerd.</string>
<string name="status_sent">Ferstjoerd!</string>
<string name="confirmation_domain_unmuted">%s net mear ferburgen</string>
<string name="confirmation_unmuted">Brûker net mear negearre</string>
<string name="confirmation_unblocked">Brûker net mear blokkearre</string>
<string name="confirmation_reported">Ferstjoerd!</string>
<string name="send_media_to">Media ferstjoere nei…</string>
<string name="send_status_content_to">Toot ferstjoere nei…</string>
<string name="send_status_link_to">Toot URL ferstjoere nei…</string>
<string name="downloading_media">Media oan it delheljen</string>
<string name="download_media">Media delhelje</string>
<string name="action_share_as">Diele as…</string>
<string name="action_open_as">Iepenje as %s</string>
<string name="action_copy_link">Keppeling kopiearje</string>
<string name="download_image">Oan it delheljen fan %1$s</string>
<string name="action_open_media_n">Media #%d iepenje</string>
<string name="title_links_dialog">Keppelingen</string>
<string name="action_open_faved_by">Favoriten besjen</string>
<string name="action_links">Keppelingen</string>
<string name="action_add_tab">Ljepblêd Tafoegje</string>
<string name="action_schedule_toot">Toot ynplanne</string>
<string name="action_emoji_keyboard">Emoji toetseboerd</string>
<string name="action_content_warning">Ynhâld warskôging</string>
<string name="action_toggle_visibility">Toot sichtberheid</string>
<string name="action_access_scheduled_toot">Ynplanne toots</string>
<string name="action_access_drafts">Sketsen</string>
<string name="action_search">Sykje</string>
<string name="action_reject">Net akseptearje</string>
<string name="action_accept">Akseptearje</string>
<string name="action_undo">Ûngedien meitsje</string>
<string name="action_edit_own_profile">Oanpasse</string>
<string name="action_edit_profile">Profyl oanpasse</string>
<string name="action_save">Bewarje</string>
<string name="action_open_drawer">Laad iepenje</string>
<string name="action_hide_media">Media ferbergje</string>
<string name="action_mention">Beneame</string>
<string name="action_unmute_conversation">Petear net mear negearre</string>
<string name="action_mute_conversation">Petear negearre</string>
<string name="action_unmute_domain">%s net mear negearre</string>
<string name="action_mute_domain">%s negearre</string>
<string name="action_mute_notifications_desc">Notifikaasjes fan %s negearre</string>
<string name="action_unmute_notifications_desc">Notifikaasjes fan %s net mear negearre</string>
<string name="action_unmute_desc">%s net mear negearre</string>
<string name="action_unmute">Net mear negearre</string>
<string name="action_mute">Negearre</string>
<string name="action_share">Diele</string>
<string name="action_photo_take">Foto nimme</string>
<string name="action_add_poll">Fragelist tafoegje</string>
<string name="action_add_media">Media tafoegje</string>
<string name="action_open_in_web">Yn webblêder iepenje</string>
<string name="action_view_media">Media</string>
<string name="action_view_follow_requests">Folgfersyken</string>
<string name="action_view_domain_mutes">Ferburgen domeinen</string>
<string name="action_view_blocks">Blokkearre brûkers</string>
<string name="action_view_mutes">Negearre brûkers</string>
<string name="action_view_bookmarks">Blêdwiizers</string>
<string name="action_view_favourites">Favoriten</string>
<string name="action_view_account_preferences">Account Foarkarren</string>
<string name="action_view_preferences">Foarkarren</string>
<string name="action_view_profile">Profyl</string>
<string name="action_close">Slute</string>
<string name="action_retry">Opnij probearje</string>
<string name="action_send_public">TOOT!</string>
<string name="action_send">TOOT</string>
<string name="action_delete_and_redraft">Fuortsmite en opnij opstelle</string>
<string name="action_delete_conversation">Petear fuortsmite</string>
<string name="action_delete">Fuortsmite</string>
<string name="action_edit">Oanpasse</string>
<string name="action_report">Oanjaan</string>
<string name="action_unblock">Net mear blokkearje</string>
<string name="action_block">Blokkearje</string>
<string name="action_unfollow">Net mear folgje</string>
<string name="action_follow">Folgje</string>
<string name="action_logout">Útlogge</string>
<string name="action_login">Ynlogge mei Mastodon</string>
<string name="action_compose">Gearstelle</string>
<string name="action_more">Mear</string>
<string name="action_unfavourite">Net mear as favoryt oanmerke</string>
<string name="action_favourite">As favoryt oanmerke</string>
<string name="action_reply">Reagearje</string>
<string name="action_quick_reply">Flugge Reaksje</string>
<string name="report_comment_hint">Oanfoljende opmerkingen\?</string>
<string name="report_username_format">Jou @%s oan</string>
<string name="notification_subscription_format">%s hat krekt in berjocht pleatst</string>
<string name="notification_follow_request_format">%s fersiket jo te folgjen</string>
<string name="notification_follow_format">%s folget jo</string>
<string name="notification_favourite_format">%s hat jo toot as favoryt oanmurken</string>
<string name="footer_empty">Hjir is neat. Lûk nei ûnderen om te ferfarskjen!</string>
<string name="message_empty">Hjir is neat.</string>
<string name="status_content_show_less">Yntearre</string>
<string name="status_content_show_more">Ûttearre</string>
<string name="status_content_warning_show_less">Minder sjen litte</string>
<string name="status_content_warning_show_more">Mear sjen litte</string>
<string name="status_sensitive_media_directions">Klik om te besjen</string>
<string name="status_media_hidden_title">Media ferburgen</string>
<string name="status_sensitive_media_title">Gefoelige ynhâld</string>
<string name="status_username_format">\@%s</string>
<string name="title_licenses">Lisinsjes</string>
<string name="title_scheduled_toot">Ynplanne toots</string>
<string name="title_drafts">Sketsen</string>
<string name="title_edit_profile">Jo profyl oanpasse</string>
<string name="title_follow_requests">Folgfersyken</string>
<string name="title_domain_mutes">Ferburgen domeinen</string>
<string name="title_blocks">Blokkearre brûkers</string>
<string name="title_mutes">Negearre brûkers</string>
<string name="title_bookmarks">Blêdwiizers</string>
<string name="title_favourites">Favoriten</string>
<string name="title_followers">Folgers</string>
<string name="title_follows">Folget</string>
<string name="title_statuses_pinned">Fêstset</string>
<string name="title_statuses_with_replies">Mei reaksjes</string>
<string name="title_statuses">Berjochten</string>
<string name="title_view_thread">Toot</string>
<string name="title_tab_preferences">Ljepblêden</string>
<string name="title_direct_messages">Direkte Berjochten</string>
<string name="title_public_federated">Federearre</string>
<string name="title_public_local">Lokaal</string>
<string name="title_notifications">Notifikaasjes</string>
<string name="title_home">Thús</string>
<string name="error_sender_account_gone">Flater by it ferstjoeren fan de toot.</string>
<string name="error_media_upload_sending">De upload is mislearre.</string>
<string name="error_media_upload_image_or_video">Ôfbyldingen en fideo\'s kinne net beide taheake wêze oan deselde status.</string>
<string name="error_media_download_permission">Tastimming om media op te slaan is nedich.</string>
<string name="error_media_upload_permission">Tastimming om media te lêzen is nedich.</string>
<string name="error_media_upload_opening">Die triem koe net iepene wurde.</string>
<string name="error_media_upload_type">Dat type triem kin net upload wurde.</string>
<string name="error_audio_upload_size">Lûdstriemen moatte lytser as 40MB wêze.</string>
<string name="error_video_upload_size">Fideo\'s moatte lytse as 40MB wêze.</string>
<string name="error_image_upload_size">De triem moat lytser as 8MB wêze.</string>
<string name="error_compose_character_limit">De status is te lang!</string>
<string name="error_retrieving_oauth_token">Koe gjin ynlogtoken krije.</string>
<string name="error_authorization_denied">Ferifikaasje ôfkard.</string>
<string name="error_authorization_unknown">Der die harren in net definiearre flater foar.</string>
<string name="error_no_web_browser_found">Koe gjin webblêder fine om te brûken.</string>
<string name="error_network">In netwurk flater die harren foar! Kontrolearje jo ferbining en probearje it noch ris!</string>
<string name="error_generic">Der die harren in flater foar.</string>
<string name="label_avatar">Profylôfbylding</string>
<string name="hint_note">Oer dy</string>
<string name="title_hashtags_dialog">Hashtags</string>
<string name="action_open_reblogged_by">Boosts sjen litte</string>
<string name="action_open_reblogger">Auteur fan boost iepenje</string>
<string name="action_hashtags">Hashtags</string>
<string name="action_reset_schedule">Nei standert ynstelling weromsette</string>
<string name="action_show_reblogs">Boosts sjen litte</string>
<string name="action_hide_reblogs">Boosts ferburgje</string>
<string name="action_unreblog">Boost fuorthelje</string>
<string name="action_reblog">Boost</string>
<string name="notification_reblog_format">%s hat dyn toot boost</string>
<string name="title_announcements">Oankundigingen</string>
</resources>

View File

@ -221,14 +221,14 @@
<string name="license_apache_2">Fo cheadachas Apache License (chì thu lethbhreac dheth gu h-ìosal)</string>
<string name="license_description">Tha còs is maoin o na pròiseactan open source seo am broinn Tusky:</string>
<string name="unreblog_private">Na brosnaich tuilleadh</string>
<string name="reblog_private">Brosnaich dhan èisteachd tùsail</string>
<string name="reblog_private">Brosnaich dhan èisteachd thùsail</string>
<string name="account_moved_description">Chaidh %1$s a ghluasad gu:</string>
<string name="profile_badge_bot_text">Robotair</string>
<string name="download_failed">Dhfhàillig an luchdadh a-nuas</string>
<string name="caption_notoemoji">Seata làithreach nan Emoji aig Google</string>
<string name="caption_twemoji">Seata stannardach nan Emoji aig Mastodon</string>
<string name="caption_blobmoji">Emojis Blob aig Android 4.47.1</string>
<string name="caption_systememoji">Seata tùsail nan Emojis air an uidheam agad</string>
<string name="caption_systememoji">Seata bunaiteach nan Emojis air an uidheam agad</string>
<string name="restart">Ath-thòisich</string>
<string name="later">Uaireigin eile</string>
<string name="restart_emoji">Feumaidh tu Tusky ath-thòiseachadh gus na roghainnean seo a chur an sàs</string>
@ -368,7 +368,7 @@
<string name="pref_failed_to_sync">Dhfhàillig le sioncronachadh nan roghainnean</string>
<string name="pref_publishing">Ga fhoillseachadh (ga shioncronachadh le frithealaiche)</string>
<string name="pref_default_media_sensitivity">Cuir comharra ri meadhanan an-còmhnaidh gu bheil iad frionasach</string>
<string name="pref_default_post_privacy">Prìobhaideachd thùsail nam post</string>
<string name="pref_default_post_privacy">Prìobhaideachd bhunaiteach nam post</string>
<string name="pref_title_http_proxy_port">Port progsaidh HTTP</string>
<string name="pref_title_http_proxy_server">Frithealaiche progsaidh HTTP</string>
<string name="pref_title_http_proxy_enable">Cuir an comas a phrogsaidh HTTP</string>
@ -532,4 +532,6 @@
<string name="follow_requests_info">Ged nach eil an cunntas agad glaiste, tha sgioba %1$s dhen bheachd gum b fheàirrde thu lèirmheas a dhèanamh air na h-iarrtasan leantainn o na cunntasan seo a làimh.</string>
<string name="dialog_delete_conversation_warning">A bheil thu airson an còmhradh seo a sguabadh às\?</string>
<string name="action_delete_conversation">Sguab às an còmhradh</string>
<string name="action_unbookmark">Thoir an comharra-lìn air falbh</string>
<string name="pref_title_confirm_favourites">Ceall còmhradh dearbhaidh mus dèid post na annsachd</string>
</resources>

View File

@ -159,8 +159,8 @@
<item quantity="other">quedan %d horas</item>
</plurals>
<plurals name="poll_timespan_days">
<item quantity="one">queda %s día</item>
<item quantity="other">quedan %s días</item>
<item quantity="one">queda %d día</item>
<item quantity="other">quedan %d días</item>
</plurals>
<string name="poll_ended_created">Rematou unha enquisa creada por ti</string>
<string name="poll_ended_voted">Rematou unha enquisa na que votaches</string>
@ -510,4 +510,6 @@
<string name="follow_requests_info">Aínda que a túa conta non está bloqueada, a administración de %1$s opina que debes revisar manualmente as peticións de seguimento destas contas.</string>
<string name="dialog_delete_conversation_warning">Eliminar esta conversa\?</string>
<string name="action_delete_conversation">Eliminar conversa</string>
<string name="action_unbookmark">Eliminar marcador</string>
<string name="pref_title_confirm_favourites">Mostrar diálogo de confirmación antes de favorecer</string>
</resources>

View File

@ -508,4 +508,8 @@
<string name="pref_title_notification_filter_subscriptions">einhver sem ég er áskrifandi að birti nýtt tíst</string>
<string name="notification_subscription_format">%s sendi inn rétt í þessu</string>
<string name="follow_requests_info">Jafnvel þótt aðgangurinn þinn sé ekki læstur, fannst starfsfólki %1$s að þú gætir viljað yfirfara handvirkt fylgjendabeiðnir frá þessum aðgöngum.</string>
<string name="action_unbookmark">Fjarlægja bókamerki</string>
<string name="pref_title_confirm_favourites">Birta staðfestingarglugga áður en sett er í eftirlæti</string>
<string name="dialog_delete_conversation_warning">Eyða þessu samtali\?</string>
<string name="action_delete_conversation">Eyða samtali</string>
</resources>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -112,4 +112,53 @@
<string name="pref_title_status_tabs">ടാബുകൾ</string>
<string name="pref_title_notifications_enabled">അറിയിപ്പുകൾ</string>
<string name="title_announcements">പ്രഖ്യാപനങ്ങൾ</string>
<string name="later">പിന്നീട്</string>
<string name="account_note_saved">സംരക്ഷിച്ചു!</string>
<string name="status_boosted_format">%s ബൂസ്റ്റ് ചെയ്തു</string>
<string name="search_no_results">ഫലങ്ങൾ ഒന്നും ഇല്ല</string>
<string name="confirmation_reported">അയച്ചൂ!</string>
<string name="action_share">പങ്കിടുക</string>
<string name="pref_title_browser_settings">ബ്രൗസർ</string>
<string name="notification_mention_name">പുതിയ സൂചനകൾ</string>
<string name="action_links">ലിങ്കുകൾ</string>
<string name="unreblog_private">ബൂസ്റ്റ് ചെയ്യേണ്ട</string>
<string name="filter_apply">പ്രയോഗിക്കുക</string>
<string name="add_account_name">അക്കൗണ്ട് ചേർക്കുക</string>
<string name="pref_title_notification_filter_mentions">സൂചിപ്പിച്ചു</string>
<string name="profile_badge_bot_text">യന്ത്രം‍</string>
<string name="pref_title_appearance_settings">രൂപം</string>
<string name="follows_you">നിങ്ങളെ പിന്തുടരുന്നു</string>
<string name="action_photo_take">ഫോട്ടോ എടുക്കുക</string>
<string name="hint_search">തിരയുക…</string>
<string name="status_media_images">ചിത്രങ്ങൾ</string>
<string name="load_more_placeholder_text">കൂടുതൽ ലഭ്യമാക്കുക</string>
<string name="title_mentions_dialog">സൂചനകൾ</string>
<string name="hint_note">ബയോ</string>
<string name="conversation_1_recipients">%1$s</string>
<string name="pref_title_thread_filter_keywords">സംഭാഷണങ്ങൾ</string>
<string name="label_quick_reply">മറുപടി…</string>
<string name="action_reject">നിരസിക്കുക</string>
<string name="app_theme_black">കറുപ്പ്</string>
<string name="button_continue">തുടരുക</string>
<string name="pref_title_timelines">സമയരേഖകൾ</string>
<string name="pref_title_proxy_settings">പ്രോക്സി</string>
<string name="pref_title_notification_alerts">മുന്നറിയിപ്പുകൾ</string>
<string name="notifications_clear">മായ്ക്കുക</string>
<string name="action_remove">നീക്കം ചെയ്യുക</string>
<string name="notification_boost_name">ബൂസ്റ്റുകൾ</string>
<string name="action_add_media">മീഡിയ ചേർ‍ക്കുക</string>
<string name="title_accounts">അക്കൗണ്ടുകൾ</string>
<string name="pref_title_show_replies">മറുപടികൾ കാണിക്കൂ</string>
<string name="action_save">സംരക്ഷിക്കുക</string>
<string name="pref_title_timeline_filters">ഫിൽടറുകൾ</string>
<string name="pref_title_language">ഭാഷ</string>
<string name="profile_metadata_content_label">ഉള്ളടക്കം</string>
<string name="action_mentions">സൂചനകൾ</string>
<string name="filter_dialog_update_button">പുതുക്കുക</string>
<string name="label_avatar">അവതാർ</string>
<string name="title_links_dialog">ലിങ്കുകൾ</string>
<string name="status_username_format">\@%s</string>
<string name="status_media_video">വിഡിയോ</string>
<string name="action_mention">സൂചിപ്പിക്കുക</string>
<string name="filter_dialog_remove_button">നീക്കം ചെയ്യുക</string>
</resources>

View File

@ -15,6 +15,7 @@
<color name="iconColor">@color/tusky_grey_70</color>
<color name="colorBackgroundAccent">@color/tusky_grey_30</color>
<color name="colorBackgroundHighlight">@color/tusky_grey_50</color>
<color name="dividerColor">@color/tusky_grey_25</color>
<color name="favoriteButtonActiveColor">@color/tusky_orange</color>

View File

@ -517,4 +517,12 @@
<string name="pref_main_nav_position">Hoofd navigatiepositie</string>
<string name="dialog_delete_conversation_warning">Dit gesprek verwijderen\?</string>
<string name="action_delete_conversation">Gesprek verwijderen</string>
<string name="follow_requests_info">Ook al heb je geen besloten account, de medewerkers van %1$s dachten dat je misschien de volgverzoeken van deze accounts handmatig zou willen controleren.</string>
<string name="wellbeing_mode_notice">Bepaalde informatie die invloed kan hebben op uw geestelijk welzijn zal worden verborgen. Dit bevat onder andere:
\n
\n- Favoriet/Boost/Volg notificaties
\n- Favoriet/Boost/Aantal boosts per toot
\n- Volger/Bericht statistieken op profielen
\n
\nPush-notificaties zullen niet worden beïnvloed, maar uw kunt uw notificatie voorkeuren handmatig wijzigen.</string>
</resources>

View File

@ -510,4 +510,6 @@
<string name="follow_requests_info">Selv om kontoen din ikke er låst, har %1$s administratorer markert disse følgeforespørsler for manuell godkjenning.</string>
<string name="dialog_delete_conversation_warning">Slette denne samtalen\?</string>
<string name="action_delete_conversation">Slett samtale</string>
<string name="action_unbookmark">Slett bokmerke</string>
<string name="pref_title_confirm_favourites">Vis bekreftelsesdialog når favoritt skal legges til</string>
</resources>

View File

@ -501,4 +501,13 @@
<string name="action_unmute_domain">Amagar pas mai a %s</string>
<string name="action_delete_conversation">Suprimir la conversacion</string>
<string name="title_announcements">Anóncias</string>
<plurals name="error_upload_max_media_reached">
<item quantity="one">Podètz pas enviar mai de %1$d pèça junta.</item>
<item quantity="other">Podètz pas enviar mai de %1$d pèças juntas.</item>
</plurals>
<string name="wellbeing_hide_stats_profile">Amagar las estatisticas dels perfils</string>
<string name="wellbeing_hide_stats_posts">Amagar las estatisticas dels tuts</string>
<string name="limit_notifications">Limitar las notificacions de la cronologia</string>
<string name="pref_title_hide_top_toolbar">Amagar lo títol ennaut de la barra</string>
<string name="pref_title_confirm_reblogs">Afichar una fenèstra de confirmacion abans de partejar</string>
</resources>

View File

@ -20,7 +20,7 @@
<string name="title_home">Strona główna</string>
<string name="title_notifications">Powiadomienia</string>
<string name="title_public_local">Lokalne</string>
<string name="title_public_federated">Federalne</string>
<string name="title_public_federated">Globalne</string>
<string name="title_view_thread">Wątek</string>
<string name="title_statuses">Wpisy</string>
<string name="title_statuses_with_replies">Z odpowiedziami</string>
@ -68,7 +68,7 @@
<string name="action_close">Zamknij</string>
<string name="action_view_profile">Profil</string>
<string name="action_view_preferences">Preferencje</string>
<string name="action_view_favourites">Polubione</string>
<string name="action_view_favourites">Ulubione</string>
<string name="action_view_mutes">Wyciszeni użytkownicy</string>
<string name="action_view_blocks">Zablokowani użytkownicy</string>
<string name="action_view_follow_requests">Prośby o możliwość śledzenia</string>
@ -276,7 +276,7 @@
<string name="status_content_show_less">Zwiń</string>
<string name="message_empty">Nic tu nie ma.</string>
<string name="action_unfavourite">Usuń z ulubionych</string>
<string name="action_delete_and_redraft">Usuń i napisz jeszcze raz</string>
<string name="action_delete_and_redraft">Usuń i przeredaguj</string>
<string name="action_view_account_preferences">Ustawienia konta</string>
<string name="action_links">Linki</string>
<string name="action_mentions">Wzmianki</string>
@ -461,7 +461,7 @@
<string name="about_powered_by_tusky">Napędzane przez Tusky</string>
<string name="post_lookup_error_format">Błąd przy wyszukiwaniu wpisu %s</string>
<string name="title_bookmarks">Zakładki</string>
<string name="action_bookmark">Zakładka</string>
<string name="action_bookmark">Dodaj do zakładek</string>
<string name="action_view_bookmarks">Zakładki</string>
<string name="description_status_bookmarked">Dodane do zakładek</string>
<string name="select_list_title">Wybierz listę</string>
@ -531,7 +531,7 @@
<string name="account_note_saved">Zapisano!</string>
<string name="account_note_hint">Twoja prywatna notatka o tym koncie</string>
<string name="duration_indefinite">Czas nieokreślony</string>
<string name="status_media_audio">Audio</string>
<string name="status_media_audio">Dźwięk</string>
<string name="notification_subscription_description">Powiadomienia o opublikowaniu nowego wpisu przez kogoś, kogo obserwujesz</string>
<string name="pref_main_nav_position">Pozycja głównego paska nawigacji</string>
<string name="pref_title_animate_custom_emojis">Animuj niestandardowe emoji</string>
@ -540,4 +540,6 @@
<string name="action_delete_conversation">Usuń konwersację</string>
<string name="notification_subscription_format">%s opublikował/a post</string>
<string name="notification_follow_request_format">%s poprosił(a) o możliwość śledzenia Cię</string>
<string name="action_unbookmark">Usuń z zakładek</string>
<string name="pref_title_confirm_favourites">Pytaj o potwierdzenie przed dodaniem do ulubionych</string>
</resources>

View File

@ -8,10 +8,265 @@
<string name="title_accounts">ගිණුම්</string>
<string name="duration_5_min">විනාඩි 5</string>
<string name="duration_30_min">විනාඩි 30</string>
<string name="duration_6_hours">හෝරා 6</string>
<string name="duration_1_hour">හෝරා 1</string>
<string name="duration_3_days">ින 3</string>
<string name="duration_1_day">ින 1</string>
<string name="duration_7_days">ින 7</string>
<string name="duration_6_hours">පැය 6</string>
<string name="duration_1_hour">පැය 1</string>
<string name="duration_3_days">වස් 3</string>
<string name="duration_1_day">වස් 1</string>
<string name="duration_7_days">වස් 7</string>
<string name="edit_poll">සංස්කරණය</string>
<string name="title_statuses_with_replies">පිළිතුරු සමඟ</string>
<string name="title_blocks">අවහිර කළ පරිශීලකයින්</string>
<string name="title_drafts">කටුපිටපත්</string>
<string name="footer_empty">කිසිවක් නැත. නැවුම් කිරීමට පහළට අදින්න!</string>
<string name="action_quick_reply">ඉක්මන් පිළිතුර</string>
<string name="action_unbookmark">පොත්යොමුව ඉවත් කරන්න</string>
<string name="action_send">ටූට්</string>
<string name="action_view_blocks">අවහිර කළ පරිශීලකයින්</string>
<string name="action_open_in_web">අතිරික්සුවෙන් විවෘත කරන්න</string>
<string name="action_report">වාර්තා කරන්න</string>
<string name="search_no_results">ප්‍රතිඵල නැත</string>
<string name="login_connection">සම්බන්ධ වෙමින්…</string>
<string name="pref_title_notifications_enabled">දැනුම්දීම්</string>
<string name="post_privacy_public">ප්‍රසිද්ධ</string>
<string name="status_media_attachments">ඇමුණුම්</string>
<string name="notification_mention_name">නව සැඳහුම්</string>
<string name="action_compose_shortcut">රචනා කරන්න</string>
<string name="status_content_warning_show_more">තව පෙන්වන්න</string>
<string name="send_toot_notification_saved_content">ටූට් හි පිටපතක් ඔබගේ කටුපිටපත් තුළට සුරකින ලදි</string>
<string name="action_hide_media">මාධ්‍ය සඟවන්න</string>
<string name="title_edit_profile">පැතිකඩ සංස්කරණය</string>
<string name="confirmation_reported">යැවිණි!</string>
<string name="action_reset_schedule">යළි සකසන්න</string>
<string name="status_content_warning_show_less">අඩුවෙන් පෙන්වන්න</string>
<string name="abbreviated_in_seconds">තත්. %d කින්</string>
<string name="action_view_mutes">නිහඬ කළ පරිශීලකයින්</string>
<string name="action_share">බෙදාගන්න</string>
<string name="account_moved_description">%1$s ගෙන ගොස් ඇත:</string>
<string name="status_share_link">ටූට් වෙත සබැඳියක් බෙදාගන්න</string>
<string name="title_licenses">බලපත්‍ර</string>
<string name="action_edit_profile">පැතිකඩ සංස්කරණය</string>
<string name="hint_display_name">දර්ශන නාමය</string>
<string name="status_text_size_medium">මධ්‍යම</string>
<string name="status_media_audio">ශ්‍රව්‍ය</string>
<string name="pref_title_show_notifications_filter">දැනුම්දීම් පෙරහන පෙන්වන්න</string>
<string name="abbreviated_days_ago">දව. %d</string>
<string name="action_logout">නික්මෙන්න</string>
<string name="filter_edit_dialog_title">පෙරහන සංස්කරණය</string>
<string name="action_mute_notifications_desc">%s වෙතින් දැනුම්දීම් නිහඬ කරන්න</string>
<string name="notification_summary_medium">%1$s, %2$s, සහ %3$s</string>
<string name="caption_twemoji">මාස්ටඩන් හි සම්මත ඉමෝජි කට්ටලය</string>
<string name="poll_info_format"> <!-- 15 votes • 1 hour left --> %1$s • %2$s</string>
<string name="action_retry">යළි උත්සාහය</string>
<string name="lock_account_label">ගිණුම අගුළුලන්න</string>
<string name="status_media_hidden_title">මාධ්‍ය සැඟවී ඇත</string>
<string name="status_sent_long">පිළිතුර සාර්ථකව යැවිණි.</string>
<string name="title_public_federated">ඒකාබද්ධ</string>
<string name="dialog_message_uploading_media">උඩුගත වෙමින්…</string>
<string name="add_account_name">ගිණුම එකතු කරන්න</string>
<string name="label_header">ශීර්ෂය</string>
<plurals name="poll_timespan_hours">
<item quantity="one">පැය %d ක් ඉතිරිය</item>
<item quantity="other">පැය %d ක් ඉතිරිය</item>
</plurals>
<string name="action_unfavourite">ප්‍රියතමය ඉවත් කරන්න</string>
<string name="drafts_failed_loading_reply">පිළිතුරෙහි තොරතුරු පූරණය වීමට අසමත් විය</string>
<string name="report_username_format">\@%s වාර්තා කරන්න</string>
<string name="report_comment_hint">අතිරේක අදහස්\?</string>
<string name="pref_title_notification_filter_mentions">සඳහන් කළ</string>
<string name="send_status_link_to">වෙත ටූට් ඒ.ස.නි. බෙදාගන්න…</string>
<string name="app_theme_light">දීප්ත</string>
<string name="compose_save_draft">කටුපිටපත සුරකින්නද\?</string>
<string name="status_sensitive_media_title">සංවේදී අන්තර්ගතයකි</string>
<string name="profile_badge_bot_text">ස්වයංක්‍රමලේඛය</string>
<string name="action_bookmark">පොත්යොමුව</string>
<string name="caption_notoemoji">ගූගල් හි වත්මන් ඉමෝජි කට්ටලය</string>
<string name="app_theme_auto">ස්වයංක්‍රීව ඉර බැසීමේදී</string>
<string name="failed_report">වාර්තා කිරීමට අසමත් විය</string>
<string name="abbreviated_years_ago">අවු. %d</string>
<string name="action_open_as">%s ලෙස විවෘත කරන්න</string>
<string name="action_open_faved_by">ප්‍රියතමයන් පෙන්වන්න</string>
<string name="abbreviated_in_minutes">වි. %d කින්</string>
<plurals name="poll_info_votes">
<item quantity="one">ජන්ද %s</item>
<item quantity="other">ජන්ද %s</item>
</plurals>
<string name="action_more">තව</string>
<string name="action_view_bookmarks">පොත්යොමු</string>
<string name="notification_mention_format">%s ඔබව සඳහන් කළා</string>
<string name="compose_active_account_description">%1$s ගිණුම සමඟ පළකරන්න</string>
<string name="hint_additional_info">අතිරේක අදහස්</string>
<string name="notification_favourite_name">ප්‍රියතමයන්</string>
<string name="download_fonts">ඔබ මේ ඉමෝජි කට්ටල පළමුව බාගත යුතුයි</string>
<string name="description_visiblity_direct">සෘජු</string>
<string name="hint_search">සොයන්න…</string>
<string name="pref_title_app_theme">යෙදුමේ තේමාව</string>
<string name="title_bookmarks">පොත්යොමු</string>
<string name="dialog_mute_warning">\@%s නිහඬ\?</string>
<string name="compose_shortcut_short_label">රචනා කරන්න</string>
<string name="poll_ended_voted">ඔබ ජන්දය දුන් මත විමසුව නිම වී ඇත</string>
<string name="about_title_activity">පිළිබඳව</string>
<string name="mute_domain_warning_dialog_ok">සමස්ථ වසම සඟවන්න</string>
<string name="profile_metadata_label">පැතිකඩ පාරදත්ත</string>
<string name="action_copy_link">සබැඳිය පිටපත්</string>
<string name="title_direct_messages">සෘජු පණිවිඩ</string>
<string name="downloading_media">මාධ්‍ය බාගත වෙමින්</string>
<string name="pref_title_show_media_preview">මාධ්‍ය පෙරදසුන් බාගන්න</string>
<string name="load_more_placeholder_text">තව පූරණය</string>
<string name="dialog_download_image">බාගන්න</string>
<string name="title_mentions_dialog">සඳැහුම්</string>
<string name="action_reply">පිළිතුර</string>
<string name="pref_title_edit_notification_settings">දැනුම්දීම්</string>
<string name="confirmation_unblocked">පරිශීලක අනවහිර කෙරිණි</string>
<string name="profile_metadata_add">දත්ත එක්කරන්න</string>
<string name="send_status_content_to">වෙත ටූට් බෙදාගන්න…</string>
<string name="send_toot_notification_cancel_title">යැවීම අවලංගු කෙරිණි</string>
<string name="action_unblock">අනවහිර</string>
<string name="action_send_public">ටූට්!</string>
<string name="title_favourites">ප්‍රියතමයන්</string>
<string name="download_image">%1$s බාගත වෙමින්</string>
<string name="failed_fetch_statuses">තත්ව ගෙන ඒමට අසමත් විය</string>
<string name="description_status_media">මාධ්‍ය: %s</string>
<string name="action_mute_conversation">සංවාදය නිහඬ කරන්න</string>
<string name="send_toot_notification_channel_name">ටූට්ස් යැවෙමින්</string>
<string name="pref_title_thread_filter_keywords">සංවාද</string>
<string name="status_text_size_large">විශාල</string>
<string name="description_visiblity_public">ප්‍රසිද්ධ</string>
<string name="add_account_description">නව මාස්ටඩන් ගිණුමක් එක්කරන්න</string>
<string name="dialog_title_finishing_media_upload">මාධ්‍ය උඩුගත වීම අහවර වෙමින්</string>
<plurals name="poll_timespan_seconds">
<item quantity="one">තත්. %d ක් ඉතිරිය</item>
<item quantity="other">තත්. %d ක් ඉතිරිය</item>
</plurals>
<string name="action_logout_confirm">ඔබට %1$s ගිණුමෙන් නික්මෙන්ට ඇවැසි බව විශ්වාසද\?</string>
<string name="title_public_local">ස්ථානීය</string>
<string name="action_view_favourites">ප්‍රියතමයන්</string>
<string name="label_quick_reply">පිළිතුරු…</string>
<string name="limit_notifications">කාලරේඛා දැනුම්දීම් සීමාකරන්න</string>
<string name="send_toot_notification_error_title">ටූට් යැවීමේ දෝෂයකි</string>
<string name="filter_addition_dialog_title">පෙරහන එකතු කරන්න</string>
<string name="pref_default_media_sensitivity">සැමවිටම මාධ්‍ය සංවේදී ලෙස සලකුණු කරන්න</string>
<string name="restart_required">යෙදුම යළි ඇරඹීම ඇවැසිය</string>
<string name="restart">යළි අරඹන්න</string>
<string name="app_theme_black">කළු</string>
<string name="abbreviated_in_years">වර්. %d කින්</string>
<string name="restart_emoji">මෙම වෙනස්කම් යෙදීමට ඔබ ටුස්කි නැවත ඇරඹිය යුතුය</string>
<string name="action_edit">සංස්කරණය</string>
<string name="button_continue">ඉදිරියට</string>
<string name="pref_title_status_filter">කාලරේඛාව පෙරීම</string>
<string name="conversation_more_recipients">%1$s, %2$s සහ තවත් %3$d</string>
<string name="pref_title_timelines">කාලරේඛා</string>
<string name="action_mute_domain">%s නිහඬ කරන්න</string>
<string name="license_cc_by_4">CC-BY 4.0</string>
<string name="replying_to">\@%s වෙත පිළිතුරු දෙමින්</string>
<string name="action_block">අවහිර</string>
<string name="download_media">මාධ්‍ය බාගන්න</string>
<string name="action_view_domain_mutes">සැඟවුනු වසම්</string>
<string name="status_text_size_small">කුඩා</string>
<string name="pref_title_alway_open_spoiler">අන්තර්ගත අවවාද සමඟ ඇති ටූට්ස් සැමවිටම විහිදන්න</string>
<string name="action_undo">පෙරසේ</string>
<string name="status_content_show_more">විහිදන්න</string>
<string name="action_mute">නිහඬ කරන්න</string>
<string name="about_tusky_version">ටුස්කි %s</string>
<string name="about_project_site">වියමන අඩවිය:
\n https://tusky.app</string>
<string name="action_accept">පිළිගන්න</string>
<string name="abbreviated_in_hours">පැ. %d කින්</string>
<string name="copy_to_clipboard_success">පසුරුපුවරුවට පිටපත් විය</string>
<string name="create_poll_title">මතවිමසුම</string>
<string name="action_remove">ඉවත් කරන්න</string>
<string name="action_add_media">මාධ්‍ය එකතු කරන්න</string>
<string name="abbreviated_in_days">ද. %d කින්</string>
<string name="notification_summary_large">%1$s, %2$s, %3$s සහ වෙනත් %4$d</string>
<string name="action_open_toot">ටූට් විවෘත කරන්න</string>
<string name="title_domain_mutes">සැඟවුනු වසම්</string>
<string name="abbreviated_hours_ago">පැය %d</string>
<string name="pref_failed_to_sync">සැකසුම් සමමුහූර්ත වීමට අසමත් විය</string>
<string name="pref_title_show_replies">පිළිතුරු පෙන්වන්න</string>
<string name="action_view_profile">පැතිකඩ</string>
<string name="caption_systememoji">ඔබගේ උපාංගයේ පෙරනිමි ඉමෝජි කට්ටලය</string>
<string name="notification_mention_descriptions">නව සැඳහුම් පිළිබඳව දැනුම්දීම්</string>
<string name="action_search">සොයන්න</string>
<string name="action_share_as">ලෙස බෙදාගන්න …</string>
<string name="title_home">මුල</string>
<string name="abbreviated_minutes_ago">වි. %d</string>
<string name="failed_search">සෙවීමට අසමත් විය</string>
<string name="no_announcements">නිවේදන නැත.</string>
<string name="license_cc_by_sa_4">CC-BY-SA 4.0</string>
<string name="action_save">සුරකින්න</string>
<string name="title_mutes">නිහඬ කළ පරිශීලකයින්</string>
<string name="no_drafts">ඔබ සතුව කටුපිටපත් නැත.</string>
<string name="title_view_thread">ටූට්</string>
<string name="pref_title_timeline_filters">පෙරහන්</string>
<string name="report_sent_success">\@%s වෙත සාර්ථකව වාර්තා කෙරිණි</string>
<string name="download_failed">බාගැනීමට අසමත් විය</string>
<string name="pref_title_language">භාෂාව</string>
<string name="account_note_saved">සුරැකිණි!</string>
<string name="about_tusky_account">ටුස්කි\'හි පැතිකඩ</string>
<string name="status_share_content">ටූට්හි අන්තර්ගතය බෙදාගන්න</string>
<string name="profile_metadata_content_label">අන්තර්ගතය</string>
<string name="notification_subscription_name">නව ටූට්ස්</string>
<string name="action_open_media_n">#%d මාධ්‍ය විවෘත කරන්න</string>
<string name="action_view_media">මාධ්‍ය</string>
<plurals name="poll_info_people">
<item quantity="one">පුද්ගලයින් %s</item>
<item quantity="other">මිනිසුන් %s</item>
</plurals>
<string name="send_media_to">වෙත මාධ්‍ය බෙදාගන්න…</string>
<string name="pref_title_public_filter_keywords">ප්‍රසිද්ධ කාලරේඛා</string>
<string name="status_text_size_smallest">කුඩාම</string>
<string name="notification_poll_name">මත විමසුම්</string>
<string name="status_sensitive_media_directions">දැකීමට ඔබන්න</string>
<string name="poll_info_closed">වසා ඇත</string>
<plurals name="poll_timespan_days">
<item quantity="one">දවස් %d ක් ඉතිරිය</item>
<item quantity="other">දවස් %d ක් ඉතිරිය</item>
</plurals>
<string name="pref_title_notification_alert_sound">ශබ්දය සමඟ දන්වන්න</string>
<string name="about_powered_by_tusky">ටුස්කි මගින් බලගන්වා ඇත</string>
<string name="pref_title_alway_show_sensitive_media">සැමවිටම සංවේදී අන්තර්ගත පෙන්වන්න</string>
<string name="title_announcements">නිවේදන</string>
<plurals name="poll_timespan_minutes">
<item quantity="one">විනාඩි %d ක් ඉතිරිය</item>
<item quantity="other">විනාඩි %d ක් ඉතිරිය</item>
</plurals>
<string name="action_access_drafts">කටුපිටපත්</string>
<string name="poll_ended_created">ඔබ සෑදූ මත විමසුම නිම වී ඇත</string>
<string name="pref_title_bot_overlay">ස්වයංක්‍රමලේඛ සඳහා දර්ශකය පෙන්වන්න</string>
<plurals name="favs">
<item quantity="one">ප්‍රියතමයන් <b>%1$s</b></item>
<item quantity="other">ප්‍රියතමයන් <b>%1$s</b></item>
</plurals>
<string name="action_favourite">ප්‍රියතම</string>
<string name="action_mentions">සඳැහුම්</string>
<string name="filter_dialog_update_button">යාවත්කාල</string>
<string name="notification_summary_small">%1$s සහ %2$s</string>
<string name="about_tusky_license">ටුස්කි යනු නොමිලේ සහ විවෘත-මූලාශ්‍ර මෘදුකාංගයකි. එය ජීඑන්යූ පොදු බලපත්‍ර අනුවාදය 3 යටතේ අවසර ලබා ඇත. ඔබට මෙතැනින් බලපත්‍රය දැකීමට හැකිය: https://www.gnu.org/licenses/gpl-3.0.en.html</string>
<string name="title_links_dialog">සබැඳි</string>
<string name="title_media">මාධ්‍ය</string>
<string name="dialog_block_warning">\@%s අවහිර\?</string>
<string name="pref_title_notification_alert_light">ආලෝකය සමඟ දන්වන්න</string>
<string name="account_note_hint">මෙම ගිණුම පිළිබඳව ඔබගේ පෞද්ගලික සටහන</string>
<string name="action_close">වසන්න</string>
<string name="title_notifications">දැනුම්දීම්</string>
<string name="status_username_format">\@%s</string>
<string name="status_sent">යැවිණි!</string>
<string name="action_login">මාස්ටඩන් සමඟ පිවිසෙන්න</string>
<string name="poll_vote">ජන්දය</string>
<string name="filter_dialog_whole_word">මුළු වචනය</string>
<string name="drafts_toot_failed_to_send">මෙම ටූට් යැවීමට අසමත් විය!</string>
<string name="status_media_video">දෘශ්‍යකය</string>
<string name="later">පසුව</string>
<string name="action_edit_own_profile">සංස්කරණය</string>
<string name="app_them_dark">අඳුරු</string>
<string name="message_empty">කිසිවක් නැත.</string>
<string name="send_toot_notification_title">ටූට් යැවෙමින්…</string>
<string name="system_default">පද්ධති පෙරනිමිය</string>
<string name="action_mention">සඳැහුම</string>
<string name="filter_dialog_remove_button">ඉවත් කරන්න</string>
<string name="dialog_mute_hide_notifications">දැනුම්දීම් සඟවන්න</string>
<string name="pref_status_text_size">තත්ව පාඨයේ ප්‍රමාණය</string>
<string name="pref_title_show_cards_in_timelines">කාලරේඛාවෙහි සබැඳි පෙරදසුන් පෙන්වන්න</string>
<string name="action_links">සබැඳි</string>
<string name="pref_title_browser_settings">අතිරික්සුව</string>
<string name="abbreviated_seconds_ago">තත්. %d</string>
</resources>

View File

@ -345,41 +345,41 @@
<string name="action_view_domain_mutes">โดเมนที่ซ่อนไว้</string>
<string name="action_view_blocks">ผู้ใช้ที่ถูกบล็อกไว้</string>
<string name="action_view_mutes">ผู้ใช้ที่ปิดเสียงไว้</string>
<string name="action_view_bookmarks">คั่นหน้า</string>
<string name="action_view_bookmarks">ที่คั่นหน้า</string>
<string name="action_view_favourites">ชื่นชอบ</string>
<string name="action_view_profile">โปรไฟล์</string>
<string name="action_close">ปิด</string>
<string name="action_retry">ลองอีกครั้ง</string>
<string name="action_send_public">TOOT!</string>
<string name="action_send">TOOT</string>
<string name="action_delete_and_redraft">ลบ แล้ว ร่างใหม่</string>
<string name="action_send_public">โพสต์!</string>
<string name="action_send">โพสต์</string>
<string name="action_delete_and_redraft">ลบแล้วร่างใหม่</string>
<string name="action_delete">ลบ</string>
<string name="action_edit">แก้ไข</string>
<string name="action_report">รายงาน</string>
<string name="action_show_reblogs">แสดงบูสต์</string>
<string name="action_hide_reblogs">ซ่อนบูสต์</string>
<string name="action_show_reblogs">แสดงการดัน</string>
<string name="action_hide_reblogs">ซ่อนการดัน</string>
<string name="action_unblock">เลิกบล็อก</string>
<string name="action_block">บล็อก</string>
<string name="action_unfollow">เลิกติดตาม</string>
<string name="action_follow">ติดตาม</string>
<string name="action_logout_confirm">ต้องการออกจากระบบของบัญชี %1$s \?</string>
<string name="action_logout_confirm">คุณต้องการออกจากระบบของบัญชี %1$s หรือไม่\?</string>
<string name="action_compose">เขียนโพสต์ใหม่</string>
<string name="action_more">อื่น ๆ</string>
<string name="action_unfavourite">เลิกชื่นชอบ</string>
<string name="action_bookmark">คั่นหน้า</string>
<string name="action_favourite">ชื่นชอบ</string>
<string name="action_unreblog">ลบบูสต์</string>
<string name="action_unreblog">ลบการดัน</string>
<string name="action_reblog">ดัน</string>
<string name="action_reply">ตอบกลับ</string>
<string name="action_quick_reply">ตอบกลับด่วน</string>
<string name="report_comment_hint">ความคิดเห็นเพิ่มเติม\?</string>
<string name="report_comment_hint">ความคิดเห็นเพิ่มเติม</string>
<string name="report_username_format">รายงาน @%s</string>
<string name="notification_follow_request_format">%s ต้องการติดตามคุณ</string>
<string name="notification_follow_format">%s ได้ติดตามคุณ</string>
<string name="notification_favourite_format">%s ได้ชื่นชอบโพสต์ของคุณ</string>
<string name="notification_reblog_format">%s ได้ดันโพสต์ของคุณ</string>
<string name="footer_empty">ไม่มีอะไรเลย ลากลงเพื่อรีเฟรช!</string>
<string name="message_empty">ไม่มีอะไร</string>
<string name="footer_empty">ไม่มีอะไรที่นี่ ลากลงเพื่อรีเฟรช!</string>
<string name="message_empty">ไม่มีอะไรที่นี่</string>
<string name="status_content_show_less">ย่อ</string>
<string name="status_content_show_more">ขยาย</string>
<string name="status_content_warning_show_less">แสดงน้อยลง</string>
@ -396,37 +396,37 @@
<string name="title_domain_mutes">โดเมนที่ซ่อนไว้</string>
<string name="title_blocks">ผู้ใช้ที่ถูกบล็อก</string>
<string name="title_mutes">ผู้ใช้ที่ปิดเสียงไว้</string>
<string name="title_bookmarks">คั่นหน้า</string>
<string name="title_bookmarks">ที่คั่นหน้า</string>
<string name="title_followers">ผู้ติดตาม</string>
<string name="title_follows">ติดตาม</string>
<string name="title_statuses_pinned">ปักหมุด</string>
<string name="title_statuses_with_replies">โพสต์และตอบกลับ</string>
<string name="title_statuses">โพสต์</string>
<string name="title_view_thread">เธรด</string>
<string name="title_view_thread">โพสต์</string>
<string name="title_tab_preferences">แท็บ</string>
<string name="title_direct_messages">ข้อความโดยตรง</string>
<string name="title_public_federated">ที่ติดต่อกับภายนอก</string>
<string name="title_public_local">ในเซิร์ฟเวอร์</string>
<string name="title_notifications">แจ้งเตือน</string>
<string name="title_notifications">การแจ้งเตือน</string>
<string name="title_home">หน้าหลัก</string>
<string name="error_sender_account_gone">การส่งโพสต์เกิดความผิดพลาด</string>
<string name="error_media_upload_sending">อัปโหลดล้มเหลว</string>
<string name="error_media_upload_image_or_video">ไม่สามารถแนบรูปภาพและวิดีทัศน์ในโพสต์เดียวกันได้</string>
<string name="error_media_upload_image_or_video">ไม่สามารถแนบรูปภาพและวิดีโอในโพสต์เดียวกันได้</string>
<string name="error_media_download_permission">ต้องมีสิทธิ์จัดเก็บสื่อ</string>
<string name="error_media_upload_permission">ต้องมีสิทธิ์อ่านสื่อ</string>
<string name="error_media_upload_opening">ไม่สามารถเปิดไฟล์ได้</string>
<string name="error_media_upload_type">ไม่สามารถอัปโหลดไฟล์ประเภทนี้ได้</string>
<string name="error_audio_upload_size">ไฟล์เสียงต้องมีขนาดน้อยกว่า 40MB</string>
<string name="error_video_upload_size">ไฟล์วีดิทัศน์ต้องมีขนาดน้อยกว่า 40MB</string>
<string name="error_video_upload_size">ไฟล์วิดีโอต้องมีขนาดน้อยกว่า 40MB</string>
<string name="error_image_upload_size">ไฟล์ต้องมีขนาดน้อยกว่า 8MB</string>
<string name="error_compose_character_limit">ข้อความสถานะยาวเกินไป!</string>
<string name="error_retrieving_oauth_token">ไม่สามารถรับโทเค็นการเข้าสู่ระบบ</string>
<string name="error_authorization_denied">การขออนุญาตสิทธิถูกปฏิเสธ</string>
<string name="error_authorization_unknown">เกิดข้อผิดพลาดในการขออนุญาตสิทธิโดยไม่ทราบสาเหตุ</string>
<string name="error_no_web_browser_found">ไม่พบเว็บเบราว์เซอร์</string>
<string name="error_no_web_browser_found">ไม่พบเว็บเบราว์เซอร์ที่จะใช้งาน</string>
<string name="error_invalid_domain">โดเมนที่ป้อนไม่ถูกต้อง</string>
<string name="error_empty">ไม่สามารถโพส์โดยไร้ข้อความได้</string>
<string name="error_network">ครือข่ายมีข้อผิดพลาดเกิดขึ้น! กรุณาตรวจสอบการเชื่อมต่อและลองอีกครั้ง!</string>
<string name="error_empty">ต้องใส่ข้อความ</string>
<string name="error_network">กิดข้อผิดพลาดเครือข่าย! กรุณาตรวจสอบการเชื่อมต่อและลองอีกครั้ง!</string>
<string name="error_generic">เกิดข้อผิดพลาด</string>
<string name="title_lists">รายการ</string>
<string name="action_lists">รายการ</string>
@ -434,8 +434,8 @@
<string name="action_reset_schedule">ล้างค่า</string>
<string name="action_search">ค้นหา</string>
<string name="action_edit_profile">แก้ไขโปรไฟล์</string>
<string name="action_view_account_preferences">ตั้งค่าบัญชี</string>
<string name="action_view_preferences">ตั้งค่า</string>
<string name="action_view_account_preferences">การกำหนดลักษณะบัญชี</string>
<string name="action_view_preferences">การกำหนดลักษณะ</string>
<string name="action_logout">ออกจากระบบ</string>
<string name="title_drafts">ฉบับร่าง</string>
<string name="title_favourites">ชื่นชอบ</string>
@ -491,6 +491,7 @@
<string name="status_media_attachments">ไฟล์แนบ</string>
<string name="status_media_audio">เสียง</string>
<string name="notification_subscription_name">โพสต์ใหม่</string>
<string name="notification_subscription_format">%s พึ่งโพสต์</string>
<string name="notification_subscription_format">%s เพิ่งโพสต์</string>
<string name="title_announcements">ประกาศ</string>
<string name="action_delete_conversation">ลบการสนทนา</string>
</resources>

View File

@ -3,8 +3,8 @@
<string name="error_generic">Bir hata oluştu.</string>
<string name="error_network">Bir ağ hatası oluştu! Lütfen bağlantınızı kontrol edin ve tekrar deneyin!</string>
<string name="error_empty">Bu alan boş bırakılmaz.</string>
<string name="error_invalid_domain">Girilen alan alanı geçersiz</string>
<string name="error_failed_app_registration">Kimlik doğrulama başarısız oldu.</string>
<string name="error_invalid_domain">Geçersiz alan adı girildi</string>
<string name="error_failed_app_registration">Bu sunucuda kimlik doğrulama başarısız oldu.</string>
<string name="error_no_web_browser_found">Kullanılabilir web tarayıcısı bulunamadı.</string>
<string name="error_authorization_unknown">Tanımlanamayan bir yetkilendirme hatası oluştu.</string>
<string name="error_authorization_denied">Yetkilendirme reddedildi.</string>
@ -12,7 +12,7 @@
<string name="error_compose_character_limit">Durum çok uzun!</string>
<string name="error_image_upload_size">Dosya 8 MB\'dan küçük olmalı.</string>
<string name="error_video_upload_size">Video dosyaları 40 MBdan küçük olmalı.</string>
<string name="error_media_upload_type">Bu biçimdeki dosyalar yüklenmez.</string>
<string name="error_media_upload_type">Bu tür bir dosya yüklenemez.</string>
<string name="error_media_upload_opening">Dosya açılamadı.</string>
<string name="error_media_upload_permission">Medya okuma izni gerekli.</string>
<string name="error_media_download_permission">Medya kaydetme izni gerekli.</string>
@ -22,53 +22,53 @@
<string name="title_home">Ana sayfa</string>
<string name="title_notifications">Bildirimler</string>
<string name="title_public_local">Yerel</string>
<string name="title_public_federated">Birleşmiş</string>
<string name="title_direct_messages">Direkt Mesajlar</string>
<string name="title_public_federated">Federe</string>
<string name="title_direct_messages">Direkt mesajlar</string>
<string name="title_tab_preferences">Sekmeler</string>
<string name="title_view_thread">Toot</string>
<string name="title_statuses">Gönderiler</string>
<string name="title_statuses_with_replies">Yanıtlar ile</string>
<string name="title_statuses_with_replies">Yanıtlarıyla</string>
<string name="title_statuses_pinned">Sabitlenmiş</string>
<string name="title_follows">Takip edilenler</string>
<string name="title_followers">Takipçiler</string>
<string name="title_favourites">Favoriler</string>
<string name="title_mutes">Sesize alınmış kullanıcılar</string>
<string name="title_blocks">Engellenmiş kullanıcılar</string>
<string name="title_follow_requests">Takip Etme İstekleri</string>
<string name="title_edit_profile">Profili düzeltme</string>
<string name="title_follow_requests">Takip istekleri</string>
<string name="title_edit_profile">Profili düzenle</string>
<string name="title_drafts">Taslaklar</string>
<string name="title_licenses">Lisanslar</string>
<string name="status_username_format">\@%s</string>
<string name="status_boosted_format">%s yineledi</string>
<string name="status_sensitive_media_title">Hasas Medya</string>
<string name="status_sensitive_media_title">Hasas medya</string>
<string name="status_media_hidden_title">Gizlenmiş medya</string>
<string name="status_sensitive_media_directions">Görüntülemek için dokunun</string>
<string name="status_content_warning_show_more">Daha Fazla Göster</string>
<string name="status_content_warning_show_less">Daha Az Göster</string>
<string name="status_content_warning_show_more">Daha fazla göster</string>
<string name="status_content_warning_show_less">Daha az göster</string>
<string name="status_content_show_more">Genişlet</string>
<string name="status_content_show_less">Daralt</string>
<string name="message_empty">Burada hiçbir şey yok.</string>
<string name="footer_empty">Henüz hiç ileti yoktur. Yenilemek için aşağıya çek!</string>
<string name="notification_reblog_format">%s tootunuzu boost etti</string>
<string name="footer_empty">Burada henüz hiç birşey yok. Yenilemek için aşağıya çekin!</string>
<string name="notification_reblog_format">%s tootunuzu yineledi</string>
<string name="notification_favourite_format">%s tootunuzu favorilerine ekledi</string>
<string name="notification_follow_format">%s seni takip etti</string>
<string name="report_username_format">\@%s bildir</string>
<string name="report_comment_hint">Daha fazla yorum?</string>
<string name="action_quick_reply">Hızlı Yanıt</string>
<string name="action_quick_reply">Hızlı yanıt</string>
<string name="action_reply">Yanıtla</string>
<string name="action_reblog">Yükselt</string>
<string name="action_favourite">Favori</string>
<string name="action_reblog">Yinele</string>
<string name="action_favourite">Favorile</string>
<string name="action_more">Daha fazla</string>
<string name="action_compose">Oluştur</string>
<string name="action_login">Mastodon ile giriş yap</string>
<string name="action_logout">Oturumu Kapat</string>
<string name="action_logout">Oturumu kapat</string>
<string name="action_logout_confirm">Bu %1$s oturumu sonlandırmak istediğinizden emin misiniz\?</string>
<string name="action_follow">Takip et</string>
<string name="action_unfollow">Takibi bırak</string>
<string name="action_block">Engelle</string>
<string name="action_unblock">Engeli kaldır</string>
<string name="action_hide_reblogs">Yükseltilenleri gizle</string>
<string name="action_show_reblogs">Boostları göster</string>
<string name="action_hide_reblogs">Yinelemeleri gizle</string>
<string name="action_show_reblogs">Yinelemeleri göster</string>
<string name="action_report">Bildir</string>
<string name="action_delete">Sil</string>
<string name="action_send">İLET</string>
@ -77,23 +77,23 @@
<string name="action_close">Kapat</string>
<string name="action_view_profile">Profil</string>
<string name="action_view_preferences">Tercihler</string>
<string name="action_view_account_preferences">Hesap Tercihleri</string>
<string name="action_view_account_preferences">Hesap tercihleri</string>
<string name="action_view_favourites">Favoriler</string>
<string name="action_view_mutes">Sesize alınmış kullanıcılar</string>
<string name="action_view_blocks">Engellenmiş kullanıcılar</string>
<string name="action_view_follow_requests">Takip İstekleri</string>
<string name="action_view_follow_requests">Takip istekleri</string>
<string name="action_view_media">Medya</string>
<string name="action_open_in_web">Tarayıcıda aç</string>
<string name="action_add_media">Medya ekle</string>
<string name="action_photo_take">Fotoğraf çek</string>
<string name="action_share">Paylaş</string>
<string name="action_mute">Sesize al</string>
<string name="action_unmute">Sesizden kaldır</string>
<string name="action_unmute">Sesizden çıkar</string>
<string name="action_mention">Bahset</string>
<string name="action_hide_media">Medyayı gizle</string>
<string name="action_open_drawer">Çekmece aç</string>
<string name="action_save">Kaydet</string>
<string name="action_edit_profile">Profili düzelt</string>
<string name="action_edit_profile">Profili düzenle</string>
<string name="action_edit_own_profile">Düzenle</string>
<string name="action_undo">Geri al</string>
<string name="action_accept">Kabul et</string>
@ -101,40 +101,40 @@
<string name="action_search">Ara</string>
<string name="action_access_drafts">Taslaklar</string>
<string name="action_toggle_visibility">Toot görünürlüğü</string>
<string name="action_content_warning">İçerik uyarı</string>
<string name="action_content_warning">İçerik uyarısı</string>
<string name="action_emoji_keyboard">İfade klavyesi</string>
<string name="action_add_tab">Sekme Ekle</string>
<string name="action_add_tab">Sekme ekle</string>
<string name="download_image">%1$s indiriliyor</string>
<string name="action_copy_link">Bağlantıyı kopyala</string>
<string name="action_open_as">Farklı aç %s</string>
<string name="action_share_as">Olarak paylaş …</string>
<string name="send_status_link_to">Durumun adresini paylaş…</string>
<string name="send_status_content_to">Durumu paylaş…</string>
<string name="send_status_content_to">Tootu paylaş…</string>
<string name="send_media_to">Medyayı paylaş…</string>
<string name="confirmation_reported">Gönderildi!</string>
<string name="confirmation_unblocked">Kullanıcının engeli kaldırıldı</string>
<string name="confirmation_unmuted">Kullanıcının sesi açıldı</string>
<string name="status_sent">İletildi!</string>
<string name="status_sent_long">Yanıt başarıyla gönderildi.</string>
<string name="hint_domain">Hangi örnek\?</string>
<string name="hint_domain">Hangi sunucu\?</string>
<string name="hint_compose">Neler oluyor?</string>
<string name="hint_content_warning">İçerik uyarı</string>
<string name="hint_content_warning">İçerik uyarısı</string>
<string name="hint_display_name">Görünen ad</string>
<string name="hint_note">Biyo</string>
<string name="hint_search">Hesaplarda ara…</string>
<string name="search_no_results">Sonuç bulunamadı</string>
<string name="label_quick_reply">Yanıt…</string>
<string name="label_avatar">Simge</string>
<string name="label_header">Üstlük</string>
<string name="label_avatar">Avatar</string>
<string name="label_header">Başlık</string>
<string name="link_whats_an_instance">Sunucu nedir\?</string>
<string name="login_connection">Bağlantı kuruluyor…</string>
<string name="dialog_whats_an_instance">Burada her hangi bir Mastodon sunucusunun adresi (mastodon.social, icosahedron.website, social.tchncs.de, ve <a href="https://github.com/tootsuite/mastodon/blob/master/docs/Using-Mastodon/List-of-Mastodon-instances.md">daha fazla!</a>) girilebiliri.
<string name="dialog_whats_an_instance">mastodon.social, icosahedron.website, social.tchncs.de ve <a href="https://instances.social">daha fazlası</a> gibi herhangi bir sunucunun adresi buraya girilebilir!
\n
\nEğer hesabınız henüz yok ise katılmak istediğiniz sunucunun adresini girerek hesap yaratabilirsin.
\nHenüz hesabınız yoksa, katılmak istediğiniz sunucunun adını girebilir ve orada bir hesap oluşturabilirsiniz.
\n
\nHer bir sunucu hesaplar ağırlayan bir yer olur ancak diğer sunucularda bulunan insanlarla aynı sitede olmuşcasına iletişime geçip takip edebilirsiniz.
\nSunucu, hesabınızın barındırıldığı tek yerdir, ancak aynı sitedeymişsiniz gibi diğer sunuculardaki kişilerle kolayca iletişim kurabilir ve onları takip edebilirsiniz.
\n
\nDaha fazla bilgi için <a href="https://mastodon.social/about">mastodon.social</a>. </string>
\n Daha fazla bilgiyi <a href="https://joinmastodon.org">joinmastodon.org</a> adresinde bulabilirsiniz. </string>
<string name="dialog_title_finishing_media_upload">Medya yüklemesi tamamlanıyor</string>
<string name="dialog_message_uploading_media">Yükleniyor…</string>
<string name="dialog_download_image">İndir</string>
@ -306,10 +306,10 @@
<plurals name="max_tab_number_reached">
<item quantity="other">%1$d maksimum sekme sayısına ulaşıldı</item>
</plurals>
<string name="title_domain_mutes">Gizli alanadları</string>
<string name="action_unreblog">Boostu kaldır</string>
<string name="title_domain_mutes">Gizli alan adları</string>
<string name="action_unreblog">Yinelemekten vazgeç</string>
<string name="action_unfavourite">Favoriyi kaldır</string>
<string name="action_view_domain_mutes">Gizli alanadları</string>
<string name="action_view_domain_mutes">Gizli alan adları</string>
<string name="action_mute_domain">%s alan adını sessize al</string>
<string name="action_links">Bağlantılar</string>
<string name="action_hashtags">Hashtags\'ler</string>
@ -402,11 +402,11 @@
<string name="pref_title_show_notifications_filter">Bildirim filtresini göster</string>
<string name="action_mentions">Bahsedenler</string>
<string name="action_open_reblogger">Yineleyen yayıncıyı</string>
<string name="action_open_reblogged_by">Boostları göster</string>
<string name="action_open_reblogged_by">Yinelemeleri göster</string>
<string name="title_mentions_dialog">Bahsedenler</string>
<string name="action_open_media_n">#%d medyayı</string>
<string name="title_bookmarks">Yer imleri</string>
<string name="title_scheduled_toot">Zamanlanmış iletiler</string>
<string name="title_scheduled_toot">Zamanlanmış tootlar</string>
<string name="action_bookmark">Yer imi</string>
<string name="action_edit">Düzenle</string>
<string name="action_delete_and_redraft">Sil ve düzenle</string>
@ -462,9 +462,9 @@
<string name="dialog_mute_hide_notifications">Bildirimleri gizle</string>
<string name="dialog_mute_warning">\@%s sessize al\?</string>
<string name="dialog_block_warning">\@%s engellensin mi\?</string>
<string name="action_unmute_domain">%s senini aç</string>
<string name="action_unmute_domain">%s alan adının sesini aç</string>
<string name="action_mute_notifications_desc">%s gelen bildirimleri yoksay</string>
<string name="action_unmute_notifications_desc">%s kullanıcısından gelen bildirimleri yoksay</string>
<string name="action_unmute_notifications_desc">%s kullanıcısından gelen bildirimleri göster</string>
<string name="action_unmute_desc">%s sesini aç</string>
<string name="notification_follow_request_format">%s seni takip etmek istiyor</string>
<string name="error_audio_upload_size">Ses dosyaları 40 MB\'dan küçük olmalı.</string>
@ -476,4 +476,6 @@
<string name="error_failed_set_caption">Başlık ayarlanamadı</string>
<string name="warning_scheduling_interval">Mastodon\'un minimum 5 dakikalık zamanlama aralığı vardır.</string>
<string name="pref_title_hide_top_toolbar">Üst araç çubuğunun başlığını gizle</string>
<string name="action_delete_conversation">Konuşmayı sil</string>
<string name="title_announcements">Duyurular</string>
</resources>

View File

@ -532,4 +532,6 @@
<string name="follow_requests_info">Навіть попри те, що ваш обліковий запис загальнодоступний, співробітники %1$s вважають, що ви, можливо, захочете переглянути запити від цих облікових записів власноруч.</string>
<string name="dialog_delete_conversation_warning">Видалити цю бесіду\?</string>
<string name="action_delete_conversation">Видалити бесіду</string>
<string name="action_unbookmark">Вилучити закладку</string>
<string name="pref_title_confirm_favourites">Запитувати підтвердження перед додаванням до вподобаних</string>
</resources>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="notification_clear_text">Bạn có muốn xóa toàn bộ thông báo\?</string>
<string name="send_toot_notification_saved_content">Đã lưu vào nháp một bản sao của tút</string>
<string name="send_toot_notification_saved_content">Đã lưu tút vào nháp</string>
<string name="send_toot_notification_cancel_title">Hủy đăng</string>
<string name="send_toot_notification_channel_name">Đăng Tút</string>
<string name="send_toot_notification_title">Đang đăng…</string>
@ -39,7 +39,7 @@
<string name="error_authorization_denied">Truy cập bị từ chối.</string>
<string name="error_authorization_unknown">Xảy ra lỗi khi cố gắng truy cập.</string>
<string name="error_no_web_browser_found">Không tìm thấy trình duyệt web.</string>
<string name="error_invalid_domain">Tài khoản không đúng</string>
<string name="error_invalid_domain">Tài khoản không hợp lệ</string>
<string name="error_empty">Không được để trống.</string>
<string name="error_network">Rớt mạng! Xin kiểm tra kết nối và thử lại!</string>
<string name="error_generic">Đã có lỗi xảy ra.</string>
@ -58,12 +58,12 @@
<string name="button_back">Quay lại</string>
<string name="button_continue">Tiếp tục</string>
<string name="filter_dialog_update_button">Cập nhật</string>
<string name="filter_dialog_remove_button">NGƯNG</string>
<string name="filter_dialog_remove_button">Xóa</string>
<string name="action_send">TÚT</string>
<string name="action_login">Đăng nhập Mastodon</string>
<string name="dialog_redraft_toot_warning">Xóa và viết lại tút này\?</string>
<string name="dialog_delete_toot_warning">Xóa tút này\?</string>
<string name="dialog_unfollow_warning">Hủy theo dõi người này\?</string>
<string name="dialog_unfollow_warning">Ngưng theo dõi người này\?</string>
<string name="dialog_message_cancel_follow_request">Hủy yêu cầu theo dõi\?</string>
<string name="dialog_download_image">Tải về</string>
<string name="dialog_message_uploading_media">Đang tải…</string>
@ -116,7 +116,7 @@
<string name="action_emoji_keyboard">Emoji</string>
<string name="action_content_warning">Nội dung nhạy cảm</string>
<string name="action_toggle_visibility">Công khai</string>
<string name="action_access_scheduled_toot">Tút đã lên lịch</string>
<string name="action_access_scheduled_toot">Đăng tự động</string>
<string name="action_access_drafts">Nháp</string>
<string name="action_reject">Từ chối</string>
<string name="action_accept">Đồng ý</string>
@ -171,7 +171,7 @@
<string name="footer_empty">Trượt xuống để tải nội dung!</string>
<string name="message_empty">Trống.</string>
<string name="status_content_show_less">Thu gọn</string>
<string name="status_content_show_more">Xem thêm</string>
<string name="status_content_show_more">Đọc tiếp</string>
<string name="status_content_warning_show_less">Thu gọn</string>
<string name="status_content_warning_show_more">Xem thêm</string>
<string name="status_sensitive_media_directions">Hiển thị</string>
@ -180,7 +180,7 @@
<string name="status_boosted_format">%s chia sẻ</string>
<string name="status_username_format">\@%s</string>
<string name="title_licenses">Giấy phép</string>
<string name="title_scheduled_toot">Lịch đăng</string>
<string name="title_scheduled_toot">Những tút đã lên lịch</string>
<string name="title_edit_profile">Chỉnh sửa trang cá nhân</string>
<string name="title_follow_requests">Yêu cầu theo dõi</string>
<string name="title_domain_mutes">Máy chủ đã ẩn</string>
@ -199,7 +199,7 @@
<string name="title_public_local">Máy chủ</string>
<string name="title_notifications">Thông báo</string>
<string name="title_home">Bảng tin</string>
<string name="title_drafts">Nháp</string>
<string name="title_drafts">Những tút nháp</string>
<string name="title_favourites">Những tút đã thích</string>
<string name="link_whats_an_instance">Máy chủ là gì\?</string>
<string name="pref_title_show_media_preview">Tải xem trước hình ảnh</string>
@ -236,9 +236,9 @@
<string name="pref_title_notification_alerts">Báo động</string>
<string name="pref_title_notifications_enabled">Thông báo</string>
<string name="pref_title_edit_notification_settings">Thông báo</string>
<string name="visibility_direct">Nhắn tin: Chỉ người được nhắc tới mới thấy</string>
<string name="visibility_private">Riêng tư: Chỉ người theo dõi mới thấy</string>
<string name="visibility_unlisted">Bán công: Không hiện trên bảng tin</string>
<string name="visibility_direct">Nhắn riêng: Chỉ người được nhắc đến thấy</string>
<string name="visibility_private">Riêng tư: Chỉ người theo dõi</string>
<string name="visibility_unlisted">Hạn chế: Không hiện trên bảng tin</string>
<string name="visibility_public">Công khai: Mọi người đều có thể thấy</string>
<string name="dialog_mute_warning">Ẩn @%s\?</string>
<string name="dialog_block_warning">Chặn @%s\?</string>
@ -255,7 +255,7 @@
<string name="status_text_size_smallest">Nhỏ</string>
<string name="pref_status_text_size">Phông chữ</string>
<string name="post_privacy_followers_only">Riêng tư</string>
<string name="post_privacy_unlisted">Bán công</string>
<string name="post_privacy_unlisted">Hạn chế</string>
<string name="post_privacy_public">Công khai</string>
<string name="pref_main_nav_position_option_bottom">Dưới màn hình</string>
<string name="pref_main_nav_position_option_top">Trên màn hình</string>
@ -315,7 +315,7 @@
<string name="pref_title_show_cards_in_timelines">Hiện xem trước của link</string>
<string name="warning_scheduling_interval">Mastodon giới hạn tối thiểu 5 phút.</string>
<string name="no_scheduled_status">Bạn không có tút đã lên lịch.</string>
<string name="no_drafts">Bạn không có bản nháp nào.</string>
<string name="no_drafts">Bạn không có tút nháp.</string>
<string name="edit_poll">Sửa</string>
<string name="poll_new_choice_hint">Lựa chọn %d</string>
<string name="poll_allow_multiple_choices">Cho phép chọn nhiều lựa chọn</string>
@ -376,9 +376,9 @@
<string name="add_hashtag_title">Thêm hashtag</string>
<string name="hint_list_name">Tên danh sách</string>
<string name="description_poll">Lượt bình chọn: %1$s, %2$s, %3$s, %4$s; %5$s</string>
<string name="description_visiblity_direct">Tin nhắn</string>
<string name="description_visiblity_direct">Nhắn riêng</string>
<string name="description_visiblity_private">Người theo dõi</string>
<string name="description_visiblity_unlisted">Bán công</string>
<string name="description_visiblity_unlisted">Hạn chế</string>
<string name="description_visiblity_public">Công khai</string>
<string name="description_status_bookmarked">Đã lưu</string>
<string name="description_status_favourited">Đã thích</string>
@ -401,7 +401,7 @@
</plurals>
<string name="pin_action">Ghim</string>
<string name="unpin_action">Gỡ ghim</string>
<string name="label_remote_account">Thông tin có thể hiển thị không đầy đủ. Nhấn để mở xem chi tiết trên trình duyệt.</string>
<string name="label_remote_account">Nội dung có thể hiển thị không đầy đủ. Nhấn để mở xem chi tiết trên trình duyệt.</string>
<string name="pref_title_absolute_time">Sử dụng thời gian thiết bị</string>
<string name="profile_metadata_content_label">Nội dung</string>
<string name="profile_metadata_label_label">Nhãn</string>
@ -489,14 +489,16 @@
<string name="dialog_delete_list_warning">Bạn thật sự muốn xóa danh sách %s\?</string>
<string name="status_media_attachments">Đính kèm</string>
<string name="status_media_audio">Âm thanh</string>
<string name="drafts_toot_reply_removed">Tút bạn lên lịch đã bị hủy bỏ</string>
<string name="draft_deleted">Tút lên lịch đã xóa</string>
<string name="drafts_toot_reply_removed">Đã xóa tút trả lời nháp</string>
<string name="draft_deleted">Đã xóa tút lên lịch</string>
<string name="drafts_failed_loading_reply">Chưa tải được bình luận</string>
<string name="drafts_toot_failed_to_send">Đăng tút không thành công!</string>
<string name="pref_title_animate_custom_emojis">Emoji động</string>
<string name="action_unsubscribe_account">Ngưng nhận thông báo</string>
<string name="action_subscribe_account">Nhận thông báo</string>
<string name="follow_requests_info">Dù biết tài khoản của bạn công khai, quản trị viên %1$s vẫn nghĩ bạn hãy nên xem lại yêu cầu theo dõi từ những tài khoản lạ.</string>
<string name="dialog_delete_conversation_warning">Xoá cuộc thảo luận này\?</string>
<string name="action_delete_conversation">Xoá thảo luận</string>
<string name="follow_requests_info">Dù biết tài khoản của bạn công khai, quản trị viên %1$s vẫn nghĩ bạn hãy nên duyệt thủ công yêu cầu theo dõi từ những tài khoản lạ.</string>
<string name="dialog_delete_conversation_warning">Xóa cuộc thảo luận này\?</string>
<string name="action_delete_conversation">Xóa thảo luận</string>
<string name="pref_title_confirm_favourites">Xác nhận trước khi thích</string>
<string name="action_unbookmark">Bỏ lưu</string>
</resources>

View File

@ -1,24 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="error_generic">应用程序出现异常</string>
<string name="error_generic">应用程序出现异常</string>
<string name="error_network">网络请求出错,请检查互联网连接并重试!</string>
<string name="error_empty">内容不能为空</string>
<string name="error_empty">内容不能为空</string>
<string name="error_invalid_domain">该域名无效</string>
<string name="error_failed_app_registration">无法连接此服务器</string>
<string name="error_no_web_browser_found">没有可用的浏览器</string>
<string name="error_authorization_unknown">认证过程出现未知错误</string>
<string name="error_authorization_denied">授权被拒绝</string>
<string name="error_retrieving_oauth_token">无法获取登录信息</string>
<string name="error_failed_app_registration">未能通过该实例的身份验证。</string>
<string name="error_no_web_browser_found">找不到可用的浏览器。</string>
<string name="error_authorization_unknown">发生不明授权错误。</string>
<string name="error_authorization_denied">授权被拒绝</string>
<string name="error_retrieving_oauth_token">未能获取登录令牌。</string>
<string name="error_compose_character_limit">嘟文太长了!</string>
<string name="error_image_upload_size">文件大小限制 8MB</string>
<string name="error_video_upload_size">视频文件大小限制 40MB</string>
<string name="error_media_upload_type">无法上传此类型的文件</string>
<string name="error_media_upload_opening">此文件无法打开</string>
<string name="error_media_upload_permission">需要授予 Yuito 读取媒体文件的权限</string>
<string name="error_media_download_permission">需要授予 Yuito 写入存储空间的权限</string>
<string name="error_media_upload_image_or_video">无法在嘟文中同时插入视频和图片</string>
<string name="error_media_upload_sending">媒体文件上传失败</string>
<string name="error_sender_account_gone">嘟文发送时出错</string>
<string name="error_image_upload_size">文件大小限制 8MB</string>
<string name="error_video_upload_size">视频文件大小限制 40MB</string>
<string name="error_media_upload_type">无法上传此类型的文件</string>
<string name="error_media_upload_opening">打不开此文件。</string>
<string name="error_media_upload_permission">需要授予 Yuito 读取媒体文件的权限</string>
<string name="error_media_download_permission">需要授予 Yuito 存储媒体的权限。</string>
<string name="error_media_upload_image_or_video">无法在嘟文中同时插入视频和图片</string>
<string name="error_media_upload_sending">上传失败</string>
<string name="error_sender_account_gone">嘟文发送时出错</string>
<string name="title_home">主页</string>
<string name="title_notifications">通知</string>
<string name="title_public_local">本站时间轴</string>
@ -47,7 +47,7 @@
<string name="status_content_warning_show_less">折叠内容</string>
<string name="status_content_show_more">展开</string>
<string name="status_content_show_less">折叠</string>
<string name="message_empty">还没有内容</string>
<string name="message_empty">还没有内容</string>
<string name="footer_empty">还没有内容,向下拉动即可刷新!</string>
<string name="notification_reblog_format">%s 转嘟了你的嘟文</string>
<string name="notification_favourite_format">%s 收藏了你的嘟文</string>
@ -130,8 +130,8 @@
<string name="confirmation_unblocked">已解除屏蔽</string>
<string name="confirmation_unmuted">已取消隐藏</string>
<string name="status_sent">已发送!</string>
<string name="status_sent_long">成功发送回复</string>
<string name="hint_domain">域名</string>
<string name="status_sent_long">成功发送回复</string>
<string name="hint_domain">哪个实例?</string>
<string name="hint_compose">有什么新鲜事?</string>
<string name="hint_content_warning">内容提醒</string>
<string name="hint_display_name">昵称</string>
@ -405,7 +405,7 @@
<item quantity="other">剩余 %d 秒</item>
</plurals>
<string name="action_reset_schedule">重置</string>
<string name="error_audio_upload_size">音频文件大小限制 40M</string>
<string name="error_audio_upload_size">音频文件大小限制 40M</string>
<string name="title_bookmarks">书签</string>
<string name="title_domain_mutes">隐藏的域名</string>
<string name="title_scheduled_toot">定时嘟文</string>
@ -485,7 +485,7 @@
<string name="pref_title_hide_top_toolbar">隐藏顶部工具栏标题</string>
<string name="no_announcements">本站暂无公告。</string>
<string name="title_announcements">公告</string>
<string name="account_note_saved">已保存</string>
<string name="account_note_saved">已保存</string>
<string name="account_note_hint">此账号的备注</string>
<string name="action_unsubscribe_account">取消关注</string>
<string name="action_subscribe_account">关注</string>
@ -495,7 +495,7 @@
<string name="drafts_toot_failed_to_send">嘟文发送失败!</string>
<string name="dialog_delete_list_warning">确认删除列表 %s</string>
<plurals name="error_upload_max_media_reached">
<item quantity="other">最多只可上传 %1$d 个媒体附件</item>
<item quantity="other">最多只可上传 %1$d 个媒体附件</item>
</plurals>
<string name="wellbeing_hide_stats_profile">隐藏账号的统计信息</string>
<string name="review_notifications">反馈通知</string>
@ -522,4 +522,6 @@
<string name="pref_title_notification_filter_subscriptions">关注的人发送了新嘟文</string>
<string name="notification_subscription_format">%s 发送了新嘟文</string>
<string name="follow_requests_info">即使您的账号未上锁,管理员 %1$s 认为您可能需要手动处理来自这些账号的关注请求。</string>
<string name="dialog_delete_conversation_warning">删除此对话吗?</string>
<string name="action_delete_conversation">删除对话</string>
</resources>

View File

@ -10,6 +10,7 @@
<!--Themed Attributes-->
<attr name="colorBackgroundAccent" format="reference|color" />
<attr name="colorBackgroundHighlight" format="reference|color" />
<attr name="textColorDisabled" format="reference|color" />
<attr name="iconColor" format="reference|color" />
<attr name="windowBackgroundColor" format="reference|color" />

View File

@ -77,8 +77,9 @@
<string name="action_reblog">Boost</string>
<string name="action_unreblog">Remove boost</string>
<string name="action_favourite">Favorite</string>
<string name="action_bookmark">Bookmark</string>
<string name="action_unfavourite">Remove favorite</string>
<string name="action_bookmark">Bookmark</string>
<string name="action_unbookmark">Remove bookmark</string>
<string name="action_more">More</string>
<string name="action_compose">Compose</string>
<string name="action_login">Login with Mastodon</string>
@ -623,6 +624,7 @@
<string name="warning_scheduling_interval">Mastodon has a minimum scheduling interval of 5 minutes.</string>
<string name="pref_title_show_cards_in_timelines">Show link previews in timelines</string>
<string name="pref_title_confirm_reblogs">Show confirmation dialog before boosting</string>
<string name="pref_title_confirm_favourites">Show confirmation dialog before favoriting</string>
<string name="pref_title_hide_top_toolbar">Hide the title of the top toolbar</string>
<string name="pref_title_wellbeing_mode">Wellbeing</string>
<string name="account_note_hint">Your private note about this account</string>

View File

@ -54,6 +54,7 @@
<item name="android:colorBackground">@color/colorBackground</item>
<item name="colorBackgroundAccent">@color/colorBackgroundAccent</item>
<item name="colorBackgroundHighlight">@color/colorBackgroundHighlight</item>
<item name="windowBackgroundColor">@color/windowBackground</item>
<item name="android:textColorPrimary">@color/textColorPrimary</item>
@ -144,6 +145,7 @@
<item name="colorSurface">@color/tusky_grey_10</item>
<item name="iconColor">@color/tusky_grey_40</item>
<item name="colorBackgroundHighlight">@color/tusky_grey_40</item>
<item name="colorBackgroundAccent">@color/tusky_grey_20</item>
<item name="dividerColor">@color/tusky_grey_10</item>

View File

@ -15,6 +15,7 @@
<color name="iconColor">@color/tusky_grey_50</color>
<color name="colorBackgroundAccent">@color/tusky_grey_70</color>
<color name="colorBackgroundHighlight">@color/tusky_grey_50</color>
<color name="dividerColor">@color/tusky_grey_80</color>
<color name="favoriteButtonActiveColor">@color/tusky_orange_light</color>

View File

@ -2,6 +2,7 @@ package com.keylesspalace.tusky
import android.text.SpannedString
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.keylesspalace.tusky.entity.Attachment
import com.keylesspalace.tusky.entity.Filter
import com.keylesspalace.tusky.entity.Poll
import com.keylesspalace.tusky.entity.PollOption
@ -14,6 +15,7 @@ import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
import org.robolectric.annotation.Config
import java.util.ArrayList
import java.util.Date
@Config(sdk = [28])
@ -125,6 +127,19 @@ class FilterTest {
)
}
@Test
fun shouldFilter_whenMediaDescriptionDoesMatch() {
assertTrue(
filterModel.shouldFilterStatus(
mockStatus(
content = "should not be filtered",
spoilerText = "should not be filtered",
attachmentsDescriptions = listOf("should not be filtered", "badWord"),
)
)
)
}
@Test
fun shouldFilterPartialWord_whenWholeWordFilterContainsNonAlphanumericCharacters() {
assertTrue(
@ -137,7 +152,8 @@ class FilterTest {
private fun mockStatus(
content: String = "",
spoilerText: String = "",
pollOptions: List<String>? = null
pollOptions: List<String>? = null,
attachmentsDescriptions: List<String>? = null
): Status {
return Status(
id = "123",
@ -157,7 +173,21 @@ class FilterTest {
sensitive = false,
spoilerText = spoilerText,
visibility = Status.Visibility.PUBLIC,
attachments = arrayListOf(),
attachments = if (attachmentsDescriptions != null) {
ArrayList(
attachmentsDescriptions.map {
Attachment(
id = "1234",
url = "",
previewUrl = null,
meta = null,
type = Attachment.Type.IMAGE,
description = it,
blurhash = null
)
}
)
} else arrayListOf(),
mentions = listOf(),
application = null,
pinned = false,
@ -173,7 +203,8 @@ class FilterTest {
options = pollOptions.map {
PollOption(it, 0)
},
voted = false
voted = false,
ownVotes = null
)
} else null,
card = null,

View File

@ -695,6 +695,7 @@ class TimelineViewModelTest {
votesCount = 1,
voted = false,
options = listOf(PollOption("1", 1), PollOption("2", 2)),
ownVotes = null
)
val status4 = makeStatus("4").copy(poll = poll)
val status3 = makeStatus("3")

View File

@ -1,8 +0,0 @@
Tusky v12.0
- Ulepszony interfejs - teraz można przenieść zakładki na dół ekranu
- Podczas wyciszania użytkownika można teraz wyciszyć wysłane przez niego powiadomienia
- Można teraz obserwować kilka hashtagów w jednej zakładce
- Ulepszono sposób, w jaki są wyświetlane opisy załączników
Pełna lista zmian: https://github.com/tuskyapp/Tusky/releases

View File

@ -1,10 +0,0 @@
Tusky v13.0
- Wsparcie dla opisów profilów (Funkcja dostępna w Mastodonie 3.2.0)
- Wsparcie dla ogłoszeń od administracji (Funkcja dostępna w Mastodonie 3.1.0)
- Zdjęcie profilowe wybranego konta widnieje teraz w głównym pasku nawigacyjnym
- Kliknięcie nazwy użytkownika na osi czasu teraz otwiera profil tego użytkownika
- Wiele małych poprawek
- Ulepszone tłumaczenia

View File

@ -1,7 +0,0 @@
Tusky v14.0
- Otrzymaj powiadomienie gdy użytkownik, którego obserwujesz, prześle wpis - kliknij na ikonkę dzwonka na ich profilu! (Funkcja dostępna w Mastodonie 3.3.0)
- Szkice zostały przeprojektowane, by ułatwić ich używanie.
- Nowy tryb samopoczucia, który pozwala Ci limitować niektóre funkcje.
- Dodano funkcję animowania niestandardowych emoji.
Pełna lista zmian: https://github.com/tuskyapp/Tusky/releases

View File

@ -1,5 +0,0 @@
Tusky v15.0
- Prośby o zezwolenie na obserwowanie są teraz wyświetlane na menu głównym
- Design wyboru czasu wysłania zaplanowanych wpisów jest bardziej zgodny z resztą aplikacji
Pełna lista zmian: https://github.com/tuskyapp/Tusky/releases

View File

@ -1,3 +0,0 @@
Tusky v15.1
To wydanie naprawia błąd aplikacji przy dodawaniu opisów do zdjęć

View File

@ -1,3 +0,0 @@
Tusky v15.1
В этом выпуске исправлена ошибка при создании подписей к изображениям