Merge branch '0.103-fixes' into 'master'
0.103 fixes Closes #991, #943, and #960 See merge request !501
This commit is contained in:
commit
b7fc904a6a
@ -136,6 +136,7 @@ public final class Languages {
|
||||
locale = new Locale(language);
|
||||
}
|
||||
}
|
||||
Locale.setDefault(locale);
|
||||
|
||||
final Resources resources = contextWrapper.getBaseContext().getResources();
|
||||
Configuration config = resources.getConfiguration();
|
||||
@ -249,6 +250,7 @@ public final class Languages {
|
||||
new Locale("rm"),
|
||||
new Locale("ro"),
|
||||
new Locale("ru"),
|
||||
new Locale("sc"),
|
||||
new Locale("si"),
|
||||
new Locale("sk"),
|
||||
new Locale("sl"),
|
||||
|
@ -126,7 +126,7 @@ public class App extends ValueObject implements Comparable<App>, Parcelable {
|
||||
public String[] tvScreenshots = new String[0];
|
||||
public String[] wearScreenshots = new String[0];
|
||||
|
||||
public String license = "Unknown";
|
||||
public String license;
|
||||
|
||||
public String authorName;
|
||||
public String authorEmail;
|
||||
|
@ -744,6 +744,15 @@ public class AppDetailsRecyclerViewAdapter
|
||||
updateExpandableItem(false);
|
||||
contentView.removeAllViews();
|
||||
|
||||
// License link
|
||||
if (!TextUtils.isEmpty(app.license)) {
|
||||
String firstLicense = app.license.split(",")[0];
|
||||
String url = "https://spdx.org/licenses/" + firstLicense + ".html";
|
||||
if (uriIsSetAndCanBeOpened(url)) {
|
||||
addLinkItemView(contentView, R.string.menu_license, R.drawable.ic_license, url, app.license);
|
||||
}
|
||||
}
|
||||
|
||||
// Video link
|
||||
if (uriIsSetAndCanBeOpened(app.video)) {
|
||||
addLinkItemView(contentView, R.string.menu_video, R.drawable.ic_video, app.video);
|
||||
@ -902,8 +911,17 @@ public class AppDetailsRecyclerViewAdapter
|
||||
}
|
||||
|
||||
private void addLinkItemView(ViewGroup parent, int resIdText, int resIdDrawable, final String url) {
|
||||
addLinkItemView(parent, resIdText, resIdDrawable, url, null);
|
||||
}
|
||||
|
||||
private void addLinkItemView(ViewGroup parent, int resIdText, int resIdDrawable, final String url, String formatArg) {
|
||||
TextView view = (TextView) LayoutInflater.from(parent.getContext()).inflate(R.layout.app_details2_link_item, parent, false);
|
||||
if (formatArg == null) {
|
||||
view.setText(resIdText);
|
||||
} else {
|
||||
String text = parent.getContext().getString(resIdText, formatArg);
|
||||
view.setText(text);
|
||||
}
|
||||
TextViewCompat.setCompoundDrawablesRelativeWithIntrinsicBounds(view, resIdDrawable, 0, 0, 0);
|
||||
parent.addView(view);
|
||||
view.setOnClickListener(new View.OnClickListener() {
|
||||
|
16
app/src/main/res/drawable/ic_license.xml
Normal file
16
app/src/main/res/drawable/ic_license.xml
Normal file
@ -0,0 +1,16 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:height="24dp"
|
||||
android:width="24dp"
|
||||
android:viewportHeight="64.0"
|
||||
android:viewportWidth="64.0">
|
||||
<path android:fillColor="#666666"
|
||||
android:pathData="M31.19,0C13.9,0.44 0,14.61 0,32C0,49.66 14.34,64 32,64C49.66,64 64,49.66 64,32C64,14.34 49.66,0 32,0C31.72,0 31.46,-0.01 31.19,0zM31.16,5.5C31.44,5.49 31.71,5.5 32,5.5C46.63,5.5 58.5,17.37 58.5,32C58.5,46.63 46.63,58.5 32,58.5C17.37,58.5 5.5,46.63 5.5,32C5.5,17.66 16.92,5.95 31.16,5.5z"
|
||||
android:strokeLineCap="butt"
|
||||
android:strokeLineJoin="round"
|
||||
android:strokeWidth="2.5950698853"/>
|
||||
<path android:fillColor="#666666"
|
||||
android:pathData="M18.12,26.78L15.38,26.78L21.59,33.75L27.81,26.78L25.57,26.78C26.05,23.38 29.05,21.2 32.5,21.47C32.64,21.48 32.77,21.47 32.91,21.47C38.53,21.47 40.75,25.73 40.94,32C41.13,38.55 37.33,42.62 32.91,42.53C28.23,42.44 26.46,40.21 25.78,36.82L17.44,36.82C18.81,44.63 24.56,49.21 32.72,49.22C41.95,49.24 48.63,41.51 48.63,32C48.63,21.85 41.96,14.78 32.72,14.78C32.44,14.78 32.18,14.77 31.91,14.78C31.84,14.79 31.78,14.78 31.72,14.78C25.95,14.88 18.12,18.92 18.12,26.78z"
|
||||
android:strokeLineCap="butt"
|
||||
android:strokeLineJoin="round"
|
||||
android:strokeWidth="2.5950698853"/>
|
||||
</vector>
|
@ -13,7 +13,7 @@
|
||||
<string name="update_interval">بهروزرسانی دورهای خودکار</string>
|
||||
<string name="update_interval_zero">بهروزرسانینکردن خودکار فهرست برنامهها</string>
|
||||
<string name="automatic_scan_wifi">فقط روی وایفای</string>
|
||||
<string name="automatic_scan_wifi_on">بهروز رسانی خودکار فهرست کارهها روی وایفای</string>
|
||||
<string name="automatic_scan_wifi_on">"بهروز رسانی خودکار فقط روی شبکههای اندازهگیری نشده مثل وایفای"</string>
|
||||
<string name="notify_on">نمایش یک آگهی هنگام موجود بودن بهروز رسانیها</string>
|
||||
<string name="no_such_app">چنین کارهای پیدا نشد.</string>
|
||||
<string name="about_title">دربارهٔ F-Droid</string>
|
||||
@ -21,7 +21,7 @@
|
||||
<string name="app_installed">نصب شده</string>
|
||||
<string name="app_not_installed">نصب نشده</string>
|
||||
<string name="added_on">در %s افزوده شد</string>
|
||||
<string name="ok">باشد</string>
|
||||
<string name="ok">قبول</string>
|
||||
<string name="yes">بله</string>
|
||||
<string name="no">خیر</string>
|
||||
<string name="repo_add_title">افزودن مخزنی جدید</string>
|
||||
@ -118,9 +118,7 @@
|
||||
<string name="notification_summary_more">+%1$d بیشتر…</string>
|
||||
<string name="send_via_bluetooth">ارسال با بلوتوث</string>
|
||||
|
||||
<string name="repo_exists_add_fingerprint">این مخزن از پیش برپا شده است. این کار، اظّلاعات کلید جدیدی را
|
||||
میافزاید.
|
||||
</string>
|
||||
<string name="repo_exists_add_fingerprint">این مخزن از پیش برپا شده است. این کار، اطّلاعات کلید جدیدی را میافزاید.</string>
|
||||
<string name="repo_exists_enable">این مخزن از پیش برپا شده است. تأیید کنید که میخواهید دوباره فعّالش کنید.</string>
|
||||
<string name="bad_fingerprint">اثر انگشت بد</string>
|
||||
<string name="invalid_url">این یک نشانی اینترنتی معتیبر نیست.</string>
|
||||
@ -148,8 +146,7 @@
|
||||
|
||||
<string name="local_repo">مخزن محلّی</string>
|
||||
<string name="local_repo_running">افدروید آمادهٔ تبادل است</string>
|
||||
<string name="touch_to_configure_local_repo">برای دیدن جزییات و اجازه به دیگرات برای تبادل کارههایتان، لمس کنید.
|
||||
</string>
|
||||
<string name="touch_to_configure_local_repo">برای دیدن جزییات و اجازه به دیگران برای تبادل کارههایتان، لمس کنید.</string>
|
||||
<string name="deleting_repo">در حال حذف مخزن جاری…</string>
|
||||
<string name="adding_apks_format">در حال افزودن %s به مخزن…</string>
|
||||
<string name="writing_index_jar">در حال نوشتن پروندهٔ شاخص امضا شده (index.jar)…</string>
|
||||
@ -181,9 +178,9 @@
|
||||
<string name="repo_num_apps">تعداد کارهها</string>
|
||||
<string name="repo_fingerprint">اثر انگشت کلید امضا (SHA-256)</string>
|
||||
<string name="repo_confirm_delete_title">حذف مخزن؟</string>
|
||||
<string name="not_on_same_wifi">افزارهتان روی همان وایفای مخزن محلّیای که افزودید نیست! لطفاً به این شبکه وصل
|
||||
شوید: %s
|
||||
</string>
|
||||
<string name="not_on_same_wifi">"افزارهتان روی همان وایفای مخزن محلّیای که افزودید نیست!
|
||||
\nلطفاً به این شبکه وصل شوید: %s
|
||||
\n "</string>
|
||||
<string name="pref_language">زبان</string>
|
||||
<string name="pref_language_default">پیشگزیدهٔ سامانه</string>
|
||||
|
||||
@ -258,7 +255,7 @@
|
||||
<string name="tap_to_install">بارگیری کامل شد، برای نصب ضربه بزنید</string>
|
||||
<string name="download_error">بارگیری موفّق نبود</string>
|
||||
|
||||
<string name="perms_new_perm_prefix">"جدید: "</string>
|
||||
<string name="perms_new_perm_prefix">جدید:</string>
|
||||
<string name="perms_description_app">فراهم شده توسّط: %1$s.</string>
|
||||
<string name="downloading">در حال بارگیری…</string>
|
||||
|
||||
@ -274,7 +271,9 @@
|
||||
<string name="theme_dark">تیره</string>
|
||||
<string name="theme_night">شب</string>
|
||||
<string name="repo_exists_and_enabled">مخزنن ورودی از پیش برپا و فعّال شده است.</string>
|
||||
<string name="repo_delete_to_overwrite">باید پیش از افزودن مخزن جدیدی با کلید متفاوت، این را حذف کنید.</string>
|
||||
<string name="repo_delete_to_overwrite">"باید پیش از افزودن مخزنی جدید با کلیدی متفاوت،
|
||||
\nاین مخزن را حذف کنید.
|
||||
\n "</string>
|
||||
<string name="malformed_repo_uri">نادیده گرفتن نشانی اینترنتی مخزن ناهنجار: %s</string>
|
||||
|
||||
<string name="all_other_repos_fine">تمام مخزنهای دیگر خطایی ایاد نکردند.</string>
|
||||
@ -298,8 +297,12 @@
|
||||
<string name="install_error_unknown">شکست در نصب به دلیل خطایی ناشناخته</string>
|
||||
<string name="uninstall_error_unknown">شکست در نصب به دلیل خطایی ناشناخته</string>
|
||||
<string name="system_install_denied_title">افزونهٔ ممتاز افدروید موجود نیست</string>
|
||||
<string name="system_install_denied_body">این گزینه فقط هنگام نصب بودن افزونهٔ ممتاز افدروید، موجود است.</string>
|
||||
<string name="system_install_denied_signature">امضای افزونه اشتباه است! لطفاً یک گزارش خطا ایجاد کنید!</string>
|
||||
<string name="system_install_denied_body">"این گزینه فقط هنگام نصب بودن افزونهٔ ممتاز افدروید،
|
||||
\nدر دسترس است.
|
||||
\n "</string>
|
||||
<string name="system_install_denied_signature">"امضای افزونه اشتباه است!
|
||||
\nلطفاً یک گزارش خطا ایجاد کنید!
|
||||
\n "</string>
|
||||
<string name="system_install_denied_permissions">اجازههای ممتاز به افزونه داده نشده است! لطفاً یک گزارش خطا ایجاد
|
||||
کنید!
|
||||
</string>
|
||||
@ -373,8 +376,10 @@
|
||||
<string name="swap_stopping_wifi">در حال توقّف وایفای…</string>
|
||||
<string name="repo_provider">مخزن: %s</string>
|
||||
|
||||
<string name="update_auto_download">بارگیری خودکار بهروز رسانیها</string>
|
||||
<string name="update_auto_download_summary">بارگیری پروندههای بهروز رسانی در پسزمینه</string>
|
||||
<string name="update_auto_download">دریافت خودکار بهروز رسانیها</string>
|
||||
<string name="update_auto_download_summary">"بهروز رسانیها به صورت خودکار بارگیری شده
|
||||
\nو برای نصبشان آگاه میشوید
|
||||
\n "</string>
|
||||
<string name="tap_to_install_format">برای نصب %s ضربه بزنید</string>
|
||||
<string name="tap_to_update_format">برای بهروز رسانی %s ضربه بزنید</string>
|
||||
<string name="download_pending">در انتظار شروع بارگیری…</string>
|
||||
@ -399,4 +404,119 @@
|
||||
<string name="uninstall_error_notify_title">خطا در حذف نصب %s</string>
|
||||
|
||||
|
||||
<string name="keep_install_history">نگه داشتن تاریخچهٔ نصب</string>
|
||||
<string name="keep_install_history_summary">نگه داشتن گزارشی ار تمام نصب و حذفها در افدروید</string>
|
||||
<string name="update_auto_install">نصب خودکار بهروز رسانیها</string>
|
||||
<string name="update_auto_install_summary">بارگیری و نصب کارههای بهروز در پسزمینه</string>
|
||||
<string name="app_details_donate_prompt_unknown_author">خرید قهوه برای توسعهدهندهٔ %1$s!</string>
|
||||
<string name="app_details_donate_prompt">%1$s به دست %2$s ایجاد شده است. برایش قهوه بخرید!</string>
|
||||
|
||||
<string name="app_version_x_available">نگارش %1$s موجود است</string>
|
||||
<string name="app_version_x_installed">نگارش %1$s</string>
|
||||
<string name="app_recommended_version_installed">نگارش %1$s (توصیه شده)</string>
|
||||
<string name="app__newly_added">جدید</string>
|
||||
<string name="app__tts__cancel_download">لغو بارگیری</string>
|
||||
<string name="app__install_downloaded_update">بهروز رسانی</string>
|
||||
|
||||
<string name="app_list__name__downloaded_and_ready_to_update">بهروز رسانی %1$s</string>
|
||||
<string name="app_list__name__downloaded_and_ready_to_install">نصب %1$s</string>
|
||||
<string name="app_list__name__downloading_in_progress">در حال بارگیری %1$s</string>
|
||||
<string name="app_list__name__successfully_installed">%1$s با موفّقیت نصب شد</string>
|
||||
<string name="app_list__age__released_today">امروز منتشر شده</string>
|
||||
<string name="app_list__age__released_yesterday">دیروز منتشر شده</string>
|
||||
<plurals name="app_list__age__released_x_days_ago">
|
||||
<item quantity="one">%1$d روز پیش منتشر شده</item>
|
||||
<item quantity="other">%1$d روز پیش منتشر شده</item>
|
||||
</plurals>
|
||||
|
||||
<string name="installed_apps__activity_title">کارههای نصب شده</string>
|
||||
<string name="installed_app__updates_ignored">صرفنظر از بهروز رسانی</string>
|
||||
<string name="installed_app__updates_ignored_for_suggested_version">صرفنظر از بهروز رسانی برای نگارش %1$s</string>
|
||||
<string name="updates__tts__download_app">بارگیری</string>
|
||||
<string name="updates__tts__download_updates_for_all_apps">بارگیری تمام بهروز رسانیها</string>
|
||||
|
||||
<string name="updates__hide_updateable_apps">نهفتن کارهها</string>
|
||||
<string name="updates__show_updateable_apps">نمایش کارهها</string>
|
||||
|
||||
<plurals name="updates__download_updates_for_apps">
|
||||
<item quantity="one">بارگیری بهروز رسانی برای %1$d کاره.</item>
|
||||
<item quantity="other">بارگیری بهروز رسانیها برای %1$d کاره.</item>
|
||||
</plurals>
|
||||
|
||||
<string name="versions">نگارشها</string>
|
||||
<string name="clear_search">پاکسازی جستوجو</string>
|
||||
|
||||
<string name="repositories_summary">افزودن منابع اضافی برای برنامهها</string>
|
||||
<string name="menu_video">ویدیو</string>
|
||||
<string name="main_menu__latest_apps">جدیدترین</string>
|
||||
<string name="main_menu__categories">دستهها</string>
|
||||
<string name="main_menu__swap_nearby">نزدیک</string>
|
||||
|
||||
<string name="latest__empty_state__no_recent_apps">کارهٔ اخیری پیدا نشد</string>
|
||||
<string name="latest__empty_state__never_updated">"به محض بهروز رسانی فهرست کارههایتان،
|
||||
\nجدیدترین کارهها باید در اینحا نمایش داده شوند
|
||||
\n "</string>
|
||||
<string name="latest__empty_state__no_enabled_repos">"به محض فعّال کردن یک مخزن و بهروز کردنش،
|
||||
\nجدیدترین کارهها باید در اینجا نمایش داده شوند
|
||||
\n "</string>
|
||||
|
||||
<string name="categories__empty_state__no_categories">هیچ دستهای برای نمایش نیست</string>
|
||||
|
||||
<string name="preference_category__my_apps">کارههای من</string>
|
||||
<string name="preference_manage_installed_apps">مدیریت کارههای نصب شده</string>
|
||||
|
||||
|
||||
<string name="details_new_in_version">جدید در نگارش %s</string>
|
||||
|
||||
<string name="antifeatureswarning">این کاره، ویژگیهایی دارد که شاید نپسندید.</string>
|
||||
<string name="antifeatures">ضدّویژگیها</string>
|
||||
<string name="hide_anti_feature_apps">خاکستری کردن کارههای دارای ضدّویژگی</string>
|
||||
<string name="hide_anti_feature_apps_on">خاکستری کردن کارههایی کخ نیازمند ضدّویژگی هستند</string>
|
||||
<string name="warning_no_internet">نمیتوان بهروز کرد. به اینترنت وصل هستید؟</string>
|
||||
<plurals name="button_view_all_apps_in_category">
|
||||
<item quantity="one"> نمایش همهٔ %d</item>
|
||||
<item quantity="other">" نمایش همهٔ %d</item>
|
||||
</plurals>
|
||||
|
||||
<string name="nearby_splash__download_apps_from_people_nearby">"اینترنت ندارید؟ کارهها را از اطرافیاتتان بارگیری کنید!
|
||||
\n "</string>
|
||||
<string name="nearby_splash__find_people_button">یافتن اطرافیانم</string>
|
||||
<string name="nearby_splash__both_parties_need_fdroid">برای استفاده از این ویژگی، دو طرف به %1$s نیاز دارند.</string>
|
||||
|
||||
<string name="app__tts__downloading_progress">در حال بارگیری، %1$d%% کامل</string>
|
||||
<string name="notification_title_single_update_available">بهروز رسانی موجود است</string>
|
||||
<string name="notification_title_single_ready_to_install">آماده برای نصب</string>
|
||||
<string name="notification_title_single_ready_to_install_update">بهروز رسانی آماده برای تصب</string>
|
||||
<string name="notification_title_single_install_error">نصب شکست خورد</string>
|
||||
<string name="notification_content_single_downloading">در حال بارگیری «%1$s»…</string>
|
||||
<string name="notification_content_single_downloading_update">در حال بارگیری بهروز رسانی برای «%1$s»…</string>
|
||||
<string name="notification_content_single_installing">در حال نصب «%1$s»…</string>
|
||||
<string name="notification_content_single_installed">با موفّقیت نصب شد</string>
|
||||
<string name="notification_content_single_install_error">نصب شکست خورد</string>
|
||||
<string name="notification_summary_updates">%1$d بهروز رسانی</string>
|
||||
<string name="notification_summary_installed">%1$d کاره نصب شدند</string>
|
||||
<string name="notification_title_summary_update_available">بهروز رسانی موجود است</string>
|
||||
<string name="notification_title_summary_downloading">در حال بارگیری…</string>
|
||||
<string name="notification_title_summary_downloading_update">در حال بارگیری بهروز رسانی…</string>
|
||||
<string name="notification_title_summary_ready_to_install">آماده برای نصب</string>
|
||||
<string name="notification_title_summary_ready_to_install_update">بهروز رسانی آماده برای نصب</string>
|
||||
<string name="notification_title_summary_installing">در حال نصب</string>
|
||||
<string name="notification_title_summary_installed">با موفّقیت نصب شد</string>
|
||||
<string name="notification_title_summary_install_error">نصب شکست خورد</string>
|
||||
<string name="notification_action_update">بهروز رسانی</string>
|
||||
<string name="notification_action_cancel">لغو</string>
|
||||
<string name="notification_action_install">نصب</string>
|
||||
|
||||
<string name="tts_category_name">دستهٔ %1$s</string>
|
||||
|
||||
<plurals name="tts_view_all_in_category">
|
||||
<item quantity="one">نمایش %1$d کارهٔ دستهٔ %2$s</item>
|
||||
<item quantity="other">نمایش تمام %1$d کارهٔ دستهٔ %2$s</item>
|
||||
</plurals>
|
||||
|
||||
<string name="details_last_updated_today">امروز بهروز شده</string>
|
||||
<plurals name="details_last_update_days">
|
||||
<item quantity="one">%1$s روز پیش بهروز شده</item>
|
||||
<item quantity="other">%1$s روز پیش بهروز شده</item>
|
||||
</plurals>
|
||||
</resources>
|
||||
|
@ -161,6 +161,7 @@
|
||||
<string name="menu_issues">Issues</string>
|
||||
<string name="menu_changelog">Changelog</string>
|
||||
<string name="menu_video">Video</string>
|
||||
<string name="menu_license">License: %s</string>
|
||||
<string name="menu_source">Source Code</string>
|
||||
<string name="menu_upgrade">Upgrade</string>
|
||||
<string name="menu_donate">Donate</string>
|
||||
|
Loading…
x
Reference in New Issue
Block a user