Merge branch 'master' of https://github.com/nextcloud/android into syncedFolders

This commit is contained in:
AndyScherzinger 2016-10-19 18:23:57 +02:00
commit e053caf4ff
No known key found for this signature in database
GPG key ID: 6CADC7E3523C308B
22 changed files with 491 additions and 181 deletions

View file

@ -74,7 +74,6 @@ We are all about quality while not sacrificing speed so we use a very pragmatic
* to assure the quality of the app, any PR gets reviewed, approved and tested by [two developers](https://github.com/nextcloud/android/blob/master/MAINTAINERS) before it will be merged to master
### Android Studio formatter setup
Our formatter setup is rather simple:
* Standard Android Studio
* Line length 120 characters (Settings->Editor->Code Style->Right margin(columns): 120)
@ -121,21 +120,22 @@ At the moment we are releasing the app in two app stores:
We do differentiate between three different kinds of releases:
### Stable
Play store and f-droid releases for the masses
stable: as described, PRs that have been tested and reviewed can go to master. After the last stable beta published PR is out in the wild for ~2 weeks and no errors get reported (by users or in the developer console) the master branch is ready for the stable release. So when we decide to go for a new release we freeze the master feature wise.
Play store and f-droid releases for the masses.
Pull Requests that have been tested and reviewed can go to master. After the last release candidate is out in the wild for ~2 weeks and no errors get reported (by users or in the developer console) the master branch is ready for the stable release.
So when we decide to go for a new release we freeze the master feature wise.
### Release Candidate
* _stable beta_ releases done via the Beta program of the Google Play store
stable beta: whenever a PR is reviewed/approved we put it on master and do a stable beta release
release candidate = tested PRs, merged to to master between stable releases, published on the Play store beta channel
_stable beta_ releases done via the Beta program of the Google Play store and f-droid.
Whenever a PR is reviewed/approved we put it on master.
Before releasing a new stable version there is at least one release candidate. It is based on the current master and during this phase the master is feature freezed. After ~2 weeks with no error a stable version will be releaded, which is identically to the latest release candidate.
### Development Beta
* _development beta_ releases done as a standalone app that can be installed in parallel to the stable app
beta: anything that has a certain maturity as in a PR that can be used already but might lack some on top features or polishing
beta = your awesome beta application that can be installed in parallel and contains PRs that are done in development but not necessarily to be considered stable enough for master or might even still have known bugs
Done as a standalone app that can be installed in parallel to the stable app
Any PR which is labelled "3. to review" or "4. to release" will be included in the beta app. The update interval depends on the speed of new/updated PRs.
##Version Name and number
## Version Name and number
### Stable / Release candidate
For _stable_ and _release candidate_ the version name follows the [semantic versioning schema](http://semver.org/) and the version number has several digits reserved to parts of the versioning schema inspired by the [jayway version numbering](https://www.jayway.com/2015/03/11/automatic-versioncode-generation-in-android-gradle/), where:
* 2 digits for beta code as in release candidates starting at '01'
@ -152,27 +152,29 @@ Examples for different versions:
beware, that beta releases for an upcoming version will always use the minor and hotfix version of the release they are targeting. So to make sure the version code of the upcoming stable release will always be higher stable releases set the 2 beta digits to '99' as seen above in the examples.
### Development Beta
For development beta the version name is in format YYYYMMDD. It is mainly as a reference for reporting bugs and is not related to stable/release candidates as it is an independent app.
## Release cycle
* for each release we choose several PRs that will be included in the next release. Currently there are many open PRs from ownCloud, but after merging them, the intention is to choose the PRs that are ready (reviewed, tested) to get them merged very soon.
* these will be merged into master, tested heavily, maybe automatic testing
* after feature freeze a public play store beta is released
* after feature freeze a public release candidate on play store and f-droid is released
* ~2 weeks testing, bug fixing
* release final version on f-droid and play store
To get an idea which PRs and issues will be part of the next release simply check our [milestone plan](https://github.com/nextcloud/android/milestones)
##Release process
## Release process
###Stable Release
### Stable Release
Stable releases are based on the git [master](https://github.com/nextcloud/android).
1. Bump the version name and version code in the [AndroidManifest.xml](https://github.com/nextcloud/android/blob/master/AndroidManifest.xml), see chapter 'Version Name and number'.
2. Create a [release/tag](https://github.com/nextcloud/android/releases) in git. Tag name following the naming schema: ```stable-Mayor.Minor.Hotfix``` (e.g. stable-1.2.0) naming the version number following the [semantic versioning schema](http://semver.org/)
###Release Candidate Release
### Release Candidate Release
Release Candidate releases are based on the git [master](https://github.com/nextcloud/android) and are done between stable releases.
1. Bump the version name and version code in the [AndroidManifest.xml](https://github.com/nextcloud/android/blob/master/AndroidManifest.xml), see below the version name and code concept.

View file

@ -1,4 +1,4 @@
# [Nextcloud](https://nextcloud.com) Android app [![Build Status](https://drone.nextcloud.com/api/badges/nextcloud/android/status.svg)](https://drone.nextcloud.com/nextcloud/android)
# [Nextcloud](https://nextcloud.com) Android app [![Build Status](https://drone.nextcloud.com/api/badges/nextcloud/android/status.svg)](https://drone.nextcloud.com/nextcloud/android) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/bbf503cdfec6441e853160135706723e)](https://www.codacy.com/app/Nextcloud/android?utm_source=github.com&utm_medium=referral&utm_content=nextcloud/android&utm_campaign=Badge_Grade)
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png"
alt="Download from Google Play"
@ -33,4 +33,4 @@ Easy starting points are also reviewing [pull requests](https://github.com/nextc
**License:** [GPLv2](https://github.com/nextcloud/android/blob/master/LICENSE.txt)
New contributions are addded under [AGPLv3](https://www.gnu.org/licenses/agpl.txt).
New contributions are added under [AGPLv3](https://www.gnu.org/licenses/agpl.txt).

View file

@ -15,6 +15,9 @@ buildscript {
}
apply plugin: 'com.android.application'
apply plugin: 'checkstyle'
apply plugin: 'pmd'
apply plugin: 'findbugs'
ext {
supportLibraryVersion = '23.4.0'
@ -41,12 +44,10 @@ dependencies {
compile "com.android.support:cardview-v7:${supportLibraryVersion}"
compile 'com.getbase:floatingactionbutton:1.10.1'
/// dependencies for local unit tests
testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:1.10.19'
/// dependencies for instrumented tests
// JUnit4 Rules
androidTestCompile 'com.android.support.test:rules:0.5'
@ -73,6 +74,12 @@ tasks.withType(Test) {
}
android {
lintOptions {
abortOnError true
lintConfig file("${project.rootDir}/lint.xml")
htmlReport true
htmlOutput file("$project.buildDir/reports/lint/lint.html")
}
compileSdkVersion 23
buildToolsVersion "23.0.3"
@ -100,14 +107,12 @@ android {
assets.srcDirs = ['assets']
}
// move whole local unit tests structure as a whole from src/test/* to test/*
test.setRoot('test')
// move whole instrumented tests structure as a whole from src/androidTest/* to androidTest/*
androidTest.setRoot('androidTest')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
@ -131,4 +136,55 @@ android {
exclude 'META-INF/LICENSE.txt'
}
task checkstyle(type: Checkstyle) {
configFile = file("${rootProject.projectDir}/checkstyle.xml")
configProperties.checkstyleSuppressionsPath = file("${project.rootDir}/config/quality/checkstyle/suppressions.xml").absolutePath
source 'src'
include '**/*.java'
exclude '**/gen/**'
classpath = files()
}
task pmd(type: Pmd) {
ruleSetFiles = files("${project.rootDir}/pmd-ruleset.xml")
ignoreFailures = false
ruleSets = []
source 'src'
include '**/*.java'
exclude '**/gen/**'
reports {
xml.enabled = false
html.enabled = true
xml {
destination "$project.buildDir/reports/pmd/pmd.xml"
}
html {
destination "$project.buildDir/reports/pmd/pmd.html"
}
}
}
task findbugs(type: FindBugs) {
ignoreFailures = false
effort = "max"
reportLevel = "high"
classes = files("$project.buildDir/intermediates/classes")
excludeFilter = new File("${project.rootDir}/findbugs-filter.xml")
source 'src'
include '**/*.java'
exclude '**/gen/**'
reports {
xml.enabled = false
html.enabled = true
html {
destination "$project.buildDir/reports/findbugs/findbugs.html"
}
}
classpath = files()
}
check.dependsOn 'checkstyle', 'findbugs', 'pmd', 'lint'
}

6
checkstyle.xml Normal file
View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
<module name="Checker">
</module>

8
findbugs-filter.xml Normal file
View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<FindBugsFilter>
<Match>
<Class name="~.*\.Manifest\$.*"/>
</Match>
</FindBugsFilter>

24
pmd-ruleset.xml Normal file
View file

@ -0,0 +1,24 @@
<?xml version="1.0"?>
<ruleset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="Android"
xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd">
<description>
The ruleset file checks code using rules defined below, new rules can always be added.The
pmd.html file contains the report which includes perceived coding issues
</description>
<exclude-pattern>.*/R.java</exclude-pattern>
<exclude-pattern>.*/gen/.*</exclude-pattern>
<rule ref="rulesets/java/logging-java.xml" />
<rule ref="rulesets/java/braces.xml" />
<rule ref="rulesets/java/strings.xml" />
<rule ref="rulesets/java/basic.xml" />
<rule ref="rulesets/java/naming.xml">
<exclude name="AbstractNaming" />
<exclude name="LongVariable" />
<exclude name="ShortMethodName" />
<exclude name="ShortVariable" />
<exclude name="VariableNamingConventions" />
</rule>
</ruleset>

View file

@ -13,7 +13,11 @@
<string name="actionbar_send_file">Изпращане</string>
<string name="actionbar_sort">Сортиране</string>
<string name="actionbar_sort_title">Сортирай по</string>
<string name="menu_item_sort_by_name">А - Я</string>
<string name="menu_item_sort_by_date">Нови - Стари</string>
<string name="menu_item_sort_by_size">Големи - Малки</string>
<string name="drawer_item_all_files">Всички файлове</string>
<string name="drawer_item_on_device">На устройството</string>
<string name="drawer_item_settings">Настройки</string>
<string name="drawer_item_uploads_list">Качено</string>
<string name="drawer_close">Затвори</string>
@ -22,27 +26,32 @@
<string name="prefs_category_more">Още</string>
<string name="prefs_accounts">Профили</string>
<string name="prefs_manage_accounts">Управление на профилите</string>
<string name="prefs_passcode">Заключваща парола</string>
<string name="prefs_passcode">Код за достъп</string>
<string name="prefs_instant_upload">Незабавно качване на снимки</string>
<string name="prefs_instant_upload_summary">Незабвано качване на снимки направени с камерата</string>
<string name="prefs_instant_upload_summary">Незабавно качване на направените снимки</string>
<string name="prefs_instant_video_upload">Незабавно качване на видео</string>
<string name="prefs_instant_video_upload_summary">Незабавно качване на видеота записани от камерата.</string>
<string name="prefs_instant_video_upload_summary">Незабавно качване на заснетите видео записи</string>
<string name="prefs_log_title">Разреши влизане</string>
<string name="prefs_log_summary">Използва се за докладване на проблеми</string>
<string name="prefs_log_title_history">История на влизанията</string>
<string name="prefs_log_summary_history">Показва запазените доклади</string>
<string name="prefs_log_delete_history_button">Изтрий истрията</string>
<string name="prefs_calendar_contacts">Синхронизиране на календар и контакти</string>
<string name="prefs_calendar_contacts_summary">Настройване на DAVdroid (v1.3.0+) за текущия профил</string>
<string name="prefs_calendar_contacts_address_resolve_error">Адресът на сървъра не може да бъде разчетен от DAVdroid</string>
<string name="prefs_calendar_contacts_no_store_error">Липсва приложение - не сте инсталира Google Play store или F-Droid</string>
<string name="prefs_calendar_contacts_sync_setup_successful">Синхронизирането на календар и контакти е настроено успешно</string>
<string name="prefs_help">Помощ</string>
<string name="prefs_recommend">Препоръчай на приятел</string>
<string name="prefs_feedback">Обратна Връзка</string>
<string name="prefs_recommend">Препоръчайте на приятел</string>
<string name="prefs_feedback">Обратна връзка</string>
<string name="prefs_imprint">Imprint</string>
<string name="prefs_remember_last_share_location">Запомни мястото за споделяне</string>
<string name="prefs_remember_last_upload_location_summary">Запомни мястото на последната споделена папка</string>
<string name="recommend_subject">Опитай %1$s на смартфона си!</string>
<string name="recommend_text">Бих желал да те поканя да ползваш %1$s на своя смартфон!\nИзтеглия я от тук:%2$s</string>
<string name="recommend_subject">Пробвайте %1$s на смартфона си!</string>
<string name="recommend_text">Бих желал да те поканя да пробваш %1$s на своя смартфон!\\nИзтегли приложението от тук: %2$s</string>
<string name="auth_check_server">Проверка на сървъра</string>
<string name="auth_check_server">Проверяване на сървъра</string>
<string name="auth_host_url">Адрес на сървъра https://…</string>
<string name="auth_username">Потребител</string>
<string name="auth_password">Парола</string>
@ -50,78 +59,85 @@
<string name="sync_string_files">Файлове</string>
<string name="setup_btn_connect">Свързване</string>
<string name="uploader_btn_upload_text">Качване</string>
<string name="uploader_btn_uploadTextSnippet_text">Създаване на текстови файл</string>
<string name="uploader_top_message">Изберете папка в която да се качват</string>
<string name="uploader_wrn_no_account_title">Няма открит профил</string>
<string name="uploader_wrn_no_account_text">Все още няма %1$s създаден профила на устройството. Моля да се създаде такъв.</string>
<string name="uploader_wrn_no_account_setup_btn_text">Настройка</string>
<string name="uploader_wrn_no_account_quit_btn_text">Изход</string>
<string name="uploader_error_title_no_file_to_upload">Няма файл за качване</string>
<string name="uploader_error_message_received_piece_of_text">%1$s неможе да качите част от текст като фаил</string>
<string name="uploader_error_message_received_piece_of_text">%1$s не може да качите част от текст като файл.</string>
<string name="uploader_error_message_no_file_to_upload">Получените данни не включват валиден файл.</string>
<string name="uploader_error_title_file_cannot_be_uploaded">Файлът не може да бъде качен.</string>
<string name="uploader_error_title_file_cannot_be_uploaded">Файлът не може да бъде качен</string>
<string name="uploader_error_message_read_permission_not_granted">%1$s нямате право да четете получения фаил</string>
<string name="uploader_error_message_source_file_not_found">Файл за качване не е намерен. Моля, проверете дали файлът съществува.</string>
<string name="uploader_error_message_source_file_not_copied">Възникна грешка при копиране на файла във временна папка. Моля, опитайте да изпратите отново.</string>
<string name="uploader_upload_files_behaviour">Опции за качване:</string>
<string name="uploader_upload_files_behaviour_move_to_nextcloud_folder">Преместване на файла в папката на Nextcloud</string>
<string name="uploader_upload_files_behaviour_only_upload">Запазване на файла в оригиналната папка</string>
<string name="uploader_upload_files_behaviour_upload_and_delete_from_source">Изтриване на файла от оригиналната папка</string>
<string name="file_list_seconds_ago">преди секунди</string>
<string name="file_list_empty">Тук няма нищо. Качете нещо!</string>
<string name="file_list_loading">Зарежда…</string>
<string name="file_list_no_app_for_file_type">Няма намерени приложения за типа фаил</string>
<string name="local_file_list_empty">Няма файлове в тази папка.</string>
<string name="local_file_list_empty">В папката няма файлове.</string>
<string name="upload_list_empty">Няма налични актуализации.</string>
<string name="file_list_folder">папка</string>
<string name="file_list_folders">папки</string>
<string name="file_list_file">файл</string>
<string name="file_list_files">файл</string>
<string name="filedetails_select_file">Натисни върху файл, за да видиш допълнителна информация.</string>
<string name="file_list_files">файлове</string>
<string name="filedetails_select_file">Натиснете върху файл, за да видите допълнителна информация.</string>
<string name="filedetails_size">Размер:</string>
<string name="filedetails_type">Тип:</string>
<string name="filedetails_created">Създаден на:</string>
<string name="filedetails_modified">Променен на:</string>
<string name="filedetails_download">Изтегляне</string>
<string name="filedetails_sync_file">Синхронизиране</string>
<string name="filedetails_renamed_in_upload_msg">Файлът беше преименуван на %1$s по време на качването.</string>
<string name="filedetails_renamed_in_upload_msg">Файлът беше преименуван на %1$s по време на качването</string>
<string name="list_layout">Оформяне на списък</string>
<string name="action_share">Споделяне</string>
<string name="common_yes">Да</string>
<string name="common_no">Не</string>
<string name="common_ok">ОК</string>
<string name="common_remove_upload">Премахване каченото</string>
<string name="common_remove_upload">Премахване на каченото</string>
<string name="common_retry_upload">Повторно качване</string>
<string name="common_cancel_sync">Отмени синхронизирането</string>
<string name="common_cancel">Отказ</string>
<string name="common_back">Назад</string>
<string name="common_save_exit">Записши &amp; съшествуващ</string>
<string name="common_save_exit">Запис и излизане</string>
<string name="common_error">Грешка</string>
<string name="common_loading">Зареждане...</string>
<string name="common_unknown">несяна</string>
<string name="common_error_unknown">Непозната грешка</string>
<string name="about_title">Относно</string>
<string name="change_password">Промяна на парола</string>
<string name="delete_account">Премахни потребителя</string>
<string name="delete_account">Премахни профила</string>
<string name="delete_account_warning">Изтриване на профила %s?\\n\\nИзтриването е необратима операция.</string>
<string name="create_account">Създаване на профил</string>
<string name="upload_chooser_title">Качване от...</string>
<string name="uploader_info_dirname">Име на папката</string>
<string name="uploader_upload_in_progress_ticker">Качване...</string>
<string name="uploader_upload_in_progress_content">%1$d%% Качване %2$s</string>
<string name="uploader_upload_succeeded_ticker">Качването е успешно.</string>
<string name="uploader_upload_succeeded_ticker">Качването е успешно</string>
<string name="uploader_upload_succeeded_content_single">%1$s качено</string>
<string name="uploader_upload_failed_ticker">Качването е неуспешно.</string>
<string name="uploader_upload_failed_content_single">Качването на %1$s не може да бъде завършено.</string>
<string name="uploader_upload_failed_credentials_error">Неуспешно качване, нужно е да влезете отново</string>
<string name="uploader_upload_failed_ticker">Качването е неуспешно</string>
<string name="uploader_upload_failed_content_single">Качването на %1$s не може да бъде завършено</string>
<string name="uploader_upload_failed_credentials_error">Неуспешно качване, нужно е да се впишете отново</string>
<string name="uploads_view_title">Качено</string>
<string name="uploads_view_group_current_uploads">Текущ</string>
<string name="uploads_view_group_finished_uploads">Качени</string>
<string name="uploads_view_upload_status_succeeded">Завършено</string>
<string name="uploads_view_upload_status_cancelled">Отказано</string>
<string name="uploads_view_upload_status_paused">Паузирано</string>
<string name="uploads_view_upload_status_paused">На пауза</string>
<string name="uploads_view_upload_status_failed_connection_error">Грешка при свързване</string>
<string name="uploads_view_upload_status_failed_retry">Качването ще се повтори скоро</string>
<string name="uploads_view_upload_status_failed_credentials_error">Грешка при удостоверение</string>
<string name="uploads_view_upload_status_failed_folder_error">Грешка в папката</string>
<string name="uploads_view_upload_status_failed_file_error">Грешка във файла</string>
<string name="uploads_view_upload_status_failed_localfile_error">Локалния фаил не е намерен</string>
<string name="uploads_view_upload_status_failed_permission_error">Грешка с правата</string>
<string name="uploads_view_upload_status_failed_permission_error">Грешка в правата</string>
<string name="uploads_view_upload_status_conflict">Конфликт</string>
<string name="uploads_view_upload_status_service_interrupted">Приложението спря работа</string>
<string name="uploads_view_upload_status_service_interrupted">Приложението бе терминирано</string>
<string name="uploads_view_upload_status_unknown_fail">Непозната грешка.</string>
<string name="uploads_view_upload_status_waiting_for_wifi">Изчакване на уайрлес връзка</string>
<string name="uploads_view_later_waiting_to_upload">Изчакване за качване</string>
@ -134,44 +150,45 @@
<string name="downloader_not_downloaded_yet">Все още не е изтеглено</string>
<string name="downloader_download_failed_credentials_error">Свалянето провалено, трябва да влезете отново</string>
<string name="common_choose_account">Изберете профил</string>
<string name="sync_fail_ticker">Синхронизацията пропадна</string>
<string name="sync_fail_ticker_unauthorized">Синхронизацията пропадна, нужно е да влезете отново</string>
<string name="sync_fail_content">Синхронизацията на %1$s не е приключила</string>
<string name="sync_fail_ticker">Синхронизацията се провали</string>
<string name="sync_fail_ticker_unauthorized">Синхронизацията се провали, нужно е се впишете отново</string>
<string name="sync_fail_content">Синхронизацията на %1$s не може да бъде завършена</string>
<string name="sync_fail_content_unauthorized">Неправилна парола за %1$s.</string>
<string name="sync_conflicts_in_favourites_ticker">Открити са конфликти</string>
<string name="sync_conflicts_in_favourites_content">%1$d kept-in-sync файла не могат да бъдат сихронизирани</string>
<string name="sync_fail_in_favourites_ticker">Неуспешни Kept-in-sync файлове</string>
<string name="sync_fail_in_favourites_content">Неуспешно синхронизиране на съдържанието на %1$d файла (%2$d конфликта).</string>
<string name="sync_fail_in_favourites_content">%1$d файла не могат да бъдат синхронизирани (%2$d конфликта)</string>
<string name="sync_foreign_files_forgotten_ticker">Някои локални файлове бяха забравени.</string>
<string name="sync_foreign_files_forgotten_content">Неуспешно копиране на %1$d файла в папка %2$s.</string>
<string name="sync_foreign_files_forgotten_explanation">От версия 1.3.16 нататък, файлове качени от това устройство ще бъдат копирани в локалната %1$s папка, за да се предотврати загуба на данни, когато един файл е синхронизиран с много профили.\n\nПоради тази промяна, всички файлове качени с предишни версии на тази програма бяха копирани в папка %2$s. За жалост, грешка по време на синхрноизцаията попречи на тази операция да бъде завършена. Можеш или да оставиш файла(овете), както са и да премахнеш връзката до %3$s, или да преместиш файла(овете) в папка %1$s и да запазиш връзката до %4$s.\n\nИзброени по-долу са локалните файл(ове), и отделечените файл(ове), до които са били свързани в %5$s.</string>
<string name="sync_foreign_files_forgotten_explanation">След версия 1.3.16, файлове качени от устройството биват копирани в локалната %1$s папка, за да се предотврати загуба на данни, когато един файл се синхронизира с много профили.\\n\\nПоради тази промяна, всички файлове качени с предишни версии на приложението бяха копирани в папка %2$s. За жалост, грешка по време на синхронизацията попречи на операцията да завърши. Можете да оставите файла(овете), както са и да премахнеш връзката до %3$s, или да преместите файла(овете) в папка %1$s и да запазите връзката до %4$s.\\n\\nДолу са изброени локалните файлове, и отдалечените файлове в %5$s, с които са били свързани.</string>
<string name="sync_current_folder_was_removed">Папка %1$s вече не същестува</string>
<string name="foreign_files_move">Преместване на всички</string>
<string name="foreign_files_success">Всички файлове са преместени.</string>
<string name="foreign_files_fail">Неуспешно преместване на някои файлове.</string>
<string name="foreign_files_fail">Някои файлове не могат да бъдат преместени</string>
<string name="foreign_files_local_text">Локален: %1$s</string>
<string name="foreign_files_remote_text">Отдалечен: %1$s</string>
<string name="pass_code_enter_pass_code">Моля, въведи парола за достъп</string>
<string name="upload_query_move_foreign_files">В папка %1$s няма достатъчно място за копиране на избраните файлове. Желаете ли да бъдат преместени?</string>
<string name="pass_code_enter_pass_code">Моля, въведете кода за достъп</string>
<string name="pass_code_configure_your_pass_code">Въведи парола за достъп</string>
<string name="pass_code_configure_your_pass_code_explanation">Паролата ще се изисква при всяко стартиране на приложението</string>
<string name="pass_code_reenter_your_pass_code">Моля, въведи отново парола за достъп</string>
<string name="pass_code_remove_your_pass_code">Премахни парола</string>
<string name="pass_code_mismatch">Паролите не съвпадат</string>
<string name="pass_code_wrong">Грешна парола</string>
<string name="pass_code_removed">Паролата премахната</string>
<string name="pass_code_stored">Паролата е запаметена</string>
<string name="pass_code_configure_your_pass_code">Въведете кода за достъп</string>
<string name="pass_code_configure_your_pass_code_explanation">Кода ще бъде изискван при всяко стартиране на приложението</string>
<string name="pass_code_reenter_your_pass_code">Моля, въведи отново кода за достъп</string>
<string name="pass_code_remove_your_pass_code">Премахни кода</string>
<string name="pass_code_mismatch">Кодовете не съвпадат</string>
<string name="pass_code_wrong">Грешен код</string>
<string name="pass_code_removed">Кодът е премахната</string>
<string name="pass_code_stored">Кодът е запаметен</string>
<string name="media_notif_ticker">%1$s музикален плеър</string>
<string name="media_state_playing">%1$s (пусната)</string>
<string name="media_state_playing">%1$s (се възпроизвежда)</string>
<string name="media_state_loading">%1$s (се зарежда)</string>
<string name="media_event_done">%1$s пускането завърши</string>
<string name="media_err_nothing_to_play">Не е открит медиен файл.</string>
<string name="media_event_done">%1$s възпроизвеждането завърши</string>
<string name="media_err_nothing_to_play">Не са открити медийни файлове</string>
<string name="media_err_no_account">Не е зададен профил.</string>
<string name="media_err_not_in_owncloud">Файлът не във валиден профил.</string>
<string name="media_err_unsupported">Неподдържан медиен кодек.</string>
<string name="media_err_not_in_owncloud">Файлът не във валиден профил</string>
<string name="media_err_unsupported">Неподдържан медиен кодек</string>
<string name="media_err_io">Неуспешно прочитане на медиен файл.</string>
<string name="media_err_malformed">Неправилно кодиран медиен файл.</string>
<string name="media_err_malformed">Неправилно кодиран медиен файл</string>
<string name="media_err_timeout">Отне твърде много време, за да започне пускането.</string>
<string name="media_err_invalid_progressive_playback">Медийният файл не може да бъде излъчен</string>
<string name="media_err_unknown">Медийният файл не може да бъде пуснат със стандартния плеър.</string>
@ -179,49 +196,50 @@
<string name="media_err_io_ex">Входно/изходна грешка, докато се опитваше да пусне %1$s.</string>
<string name="media_err_unexpected">Неочаквана грешка, докато се опитваше да пусне %1$s.</string>
<string name="media_rewind_description">Бутон за превъртане</string>
<string name="media_play_pause_description">Бутон пусни / пауза </string>
<string name="media_play_pause_description">Бутон възпроизведи / пауза </string>
<string name="media_forward_description">Бутон за превъртане напред</string>
<string name="auth_getting_authorization">Получаване оторизация</string>
<string name="auth_trying_to_login">Опитва се да влезе</string>
<string name="auth_no_net_conn_title">Няма интернет връзка</string>
<string name="auth_getting_authorization">Получаване оторизация...</string>
<string name="auth_trying_to_login">Опит за вписване...</string>
<string name="auth_no_net_conn_title">Няма връзка с интернет</string>
<string name="auth_nossl_plain_ok_title">Няма сигурна връзка</string>
<string name="auth_connection_established">Осъществена връзка</string>
<string name="auth_testing_connection">Проверка на свързаност</string>
<string name="auth_connection_established">Връзка е осъществена</string>
<string name="auth_testing_connection">Проверка на връзката</string>
<string name="auth_not_configured_title">Неправилно зададена сървърна конфигурация.</string>
<string name="auth_account_not_new">Профил за същия потребител на същия сървър е вече настроен на устройството.</string>
<string name="auth_account_not_the_same">Въведният потребител не съвпада с потребителя на профила.</string>
<string name="auth_account_not_new">Профил за същия потребител на същия сървър е вече настроен на устройството</string>
<string name="auth_account_not_the_same">Въведният потребител не съвпада с потребителя на профила</string>
<string name="auth_unknown_error_title">Неизвестна грешка!</string>
<string name="auth_unknown_host_title">Неуспешно намиране на сървъра.</string>
<string name="auth_incorrect_path_title">Сървърът не е открит.</string>
<string name="auth_timeout_title">Сървърът се забави прекалено много с отговора.</string>
<string name="auth_incorrect_address_title">Грешен формат адрес на сървъра</string>
<string name="auth_incorrect_path_title">Сървърът не е открит</string>
<string name="auth_timeout_title">Сървърът се забави прекалено много с отговора</string>
<string name="auth_incorrect_address_title">Грешен формат на адреса на сървъра</string>
<string name="auth_ssl_general_error_title">Неуспешна инициализация на SSL.</string>
<string name="auth_ssl_unverified_server_title">Неуспешна проверка на SSL самоличността на сървъра.</string>
<string name="auth_bad_oc_version_title">Неизвестна версия на сървъра.</string>
<string name="auth_wrong_connection_title">Неуспешно осъществяване на връзка</string>
<string name="auth_secure_connection">Осъществена сигурна връзка.</string>
<string name="auth_secure_connection">Осъществена е сигурна връзка.</string>
<string name="auth_unauthorized">Грешно потребителско име или парола</string>
<string name="auth_oauth_error">Неуспешна оторизация</string>
<string name="auth_oauth_error_access_denied">Достъпът отказан от оторизиращия сървър</string>
<string name="auth_wtf_reenter_URL">Неочакван състояние; Моля, въведете адреса на сървъра отново</string>
<string name="auth_wtf_reenter_URL">Неочаквано състояние. Моля, въведете адреса на сървъра отново</string>
<string name="auth_expired_oauth_token_toast">Оторизацията изтече. Моля, оторизирайте се отново.</string>
<string name="auth_expired_basic_auth_toast">Моля въведете текущата парола</string>
<string name="auth_expired_saml_sso_token_toast">Сесията изтече. Моля, свържете се повторно.</string>
<string name="auth_connecting_auth_server">Свързване към сървър за аутентикация</string>
<string name="auth_unsupported_auth_method">Сървърът не поддържа този метод за оторизиране</string>
<string name="auth_expired_saml_sso_token_toast">Сесията изтече. Моля, свържете се отново</string>
<string name="auth_connecting_auth_server">Свързване към сървър за идентификация</string>
<string name="auth_unsupported_auth_method">Сървърът не поддържа този метод за идентификация</string>
<string name="auth_unsupported_multiaccount">%1$s не поддържа множество профили</string>
<string name="auth_fail_get_user_name">Вашият сървър не връща правилен потребителски индентификатор.
Моля, свържете се с администратора.</string>
<string name="auth_can_not_auth_against_server">Неуспешно аутентикиране към този сървър</string>
<string name="auth_account_does_not_exist">Профила не съществува на устройството все още</string>
<string name="auth_account_does_not_exist">Профилът не съществува на устройството все още</string>
<string name="common_rename">Преименуване</string>
<string name="common_remove">Премахване</string>
<string name="confirmation_remove_folder_alert">Наистина ли искате да премахнете %1$s и съдържанието му?</string>
<string name="confirmation_remove_file_alert">Наистина ли желаете %1$s да бъде премахнат?</string>
<string name="confirmation_remove_folder_alert">Наистина ли желаете %1$s и съдържанието ѝ да бъде премахната?</string>
<string name="confirmation_remove_local">Само локално</string>
<string name="remove_success_msg">Премахването успешно.</string>
<string name="remove_fail_msg">Неуспешно прехамхване.</string>
<string name="remove_success_msg">Успешно премахване</string>
<string name="remove_fail_msg">Неуспешно прехамхване</string>
<string name="rename_dialog_title">Въведете ново име</string>
<string name="rename_local_fail_msg">Локално копие не може да бъде преименувано; опитайте с друго име</string>
<string name="rename_server_fail_msg">Неуспешно преименуване</string>
@ -231,12 +249,12 @@
<string name="filename_forbidden_characters">Забранени символи: / \\ &lt; &gt; : \" | ? *</string>
<string name="filename_forbidden_charaters_from_server">Името на файла съдържа поне един невалиден символ</string>
<string name="filename_empty">Името на файла не може да бъде празно</string>
<string name="wait_a_moment">Изчакайте малко</string>
<string name="wait_checking_credentials">Проверка съхранените пълномощия</string>
<string name="filedisplay_unexpected_bad_get_content">Неочакван проблем; моля, изберете файла от друга програма.</string>
<string name="filedisplay_no_file_selected">Не е избран файл</string>
<string name="activity_chooser_title">Изпращане на връзката до...</string>
<string name="wait_for_tmp_copy_from_private_storage">Копира файла от личното хранилище</string>
<string name="wait_a_moment">Моля, изчакайте</string>
<string name="wait_checking_credentials">Проверка на съхранените пълномощия</string>
<string name="filedisplay_unexpected_bad_get_content">Неочакван проблем. Моля, изберете файла от друго приложение.</string>
<string name="filedisplay_no_file_selected">Не сте избрали файл</string>
<string name="activity_chooser_title">Изпращане на връзката чрез...</string>
<string name="wait_for_tmp_copy_from_private_storage">Копиране на файла от личното хранилище</string>
<string name="oauth_check_onoff">Вписване с oAuth2</string>
<string name="oauth_login_connection">Свързване с оАутх2 сървър...</string>
@ -246,9 +264,9 @@
<string name="ssl_validator_reason_cert_expired">- Сертификатът на сървъра е изтекъл</string>
<string name="ssl_validator_reason_cert_not_yet_valid">- Датите на валидност на сървърния сертификат са в бъдещето.</string>
<string name="ssl_validator_reason_hostname_not_verified">- URL адресът не съвпада с този сертификата.</string>
<string name="ssl_validator_question">Въпреки всичко, искате ли да се доверите на сертификата?</string>
<string name="ssl_validator_not_saved">Неуспешно запазване на сертификата.</string>
<string name="ssl_validator_btn_details_see">Подробности</string>
<string name="ssl_validator_question">Желаете ли да се доверите на сертификата, въпреки това?</string>
<string name="ssl_validator_not_saved">Сертификатът не може да бъде запаметен.</string>
<string name="ssl_validator_btn_details_see">Детайли</string>
<string name="ssl_validator_btn_details_hide">Скриване</string>
<string name="ssl_validator_label_subject">Издаден на:</string>
<string name="ssl_validator_label_issuer">Издаден от:</string>
@ -263,41 +281,48 @@
<string name="ssl_validator_label_validity_to">До:</string>
<string name="ssl_validator_label_signature">Електронен подпис:</string>
<string name="ssl_validator_label_signature_algorithm">Алгоритъм:</string>
<string name="digest_algorithm_not_available">Този алгоритъм не се потдържа от вашия телефон</string>
<string name="ssl_validator_label_certificate_fingerprint">Пръстов отпечатък</string>
<string name="certificate_load_problem">Има проблем при зареждане на сертификата</string>
<string name="digest_algorithm_not_available">Алгоритъмът не се поддържа от вашия телефон.</string>
<string name="ssl_validator_label_certificate_fingerprint">Отпечатък:</string>
<string name="certificate_load_problem">Възникна проблем при зареждане на сертификата.</string>
<string name="ssl_validator_null_cert">Сертификатът не може да бъде показан.</string>
<string name="ssl_validator_no_info_about_error">- Няма информация за грешката.</string>
<string name="placeholder_sentence">Това е за запазване на място</string>
<string name="placeholder_filename">placeholder.txt</string>
<string name="placeholder_filetype">PNG Image</string>
<string name="placeholder_filetype">PNG изображение</string>
<string name="placeholder_filesize">389 KB</string>
<string name="placeholder_timestamp">2012/05/18 12:23 PM</string>
<string name="placeholder_media_time">12:23:45</string>
<string name="instant_upload_on_wifi">Качване на снимки само през WiFi</string>
<string name="instant_video_upload_on_wifi">Качване на видео само през WiFi</string>
<string name="instant_video_upload_on_charging">Качване само по време на зареждане</string>
<string name="instant_upload_on_charging">Качване само по време на зареждане</string>
<string name="instant_upload_path">/InstantUpload</string>
<string name="conflict_title">Файлов конфликт</string>
<string name="conflict_message">Кои файлове желаете да запазите? Ако изберете и двете версии, към името на локалния файл ще бъде добавено число.</string>
<string name="conflict_keep_both">Запазване и на двата</string>
<string name="conflict_use_local_version">Локална версия</string>
<string name="conflict_use_server_version">Сървърна версия</string>
<string name="conflict_use_local_version">локална версия</string>
<string name="conflict_use_server_version">версия на сървъра</string>
<string name="preview_image_description">Преглед на изображението</string>
<string name="preview_image_error_unknown_format">Изображението не може да бъде показано</string>
<string name="error__upload__local_file_not_copied">%1$s не може да бъде копиран в локалната папка %2$s</string>
<string name="share_link_no_support_share_api">За съжаление споделянето не е включено на сървъра ви.
<string name="prefs_instant_upload_path_title">Папка за неззбавно качените</string>
<string name="prefs_instant_upload_path_use_subfolders_title">Ползване на подпапки</string>
<string name="prefs_instant_upload_path_use_subfolders_summary">Съхраняване в подпапки, разделени по година и месец</string>
<string name="share_link_no_support_share_api">За съжаление споделянето не е включено на сървъра ви.
Моля, свържете се с администратора.</string>
<string name="share_link_file_no_exist">Неуспешен опит за споделяне. Моля, провери дали файла съществува.</string>
<string name="share_link_file_error">Настъпи грешка при опита за споделяне на този файл или папка.</string>
<string name="unshare_link_file_no_exist">Неуспешен опит за прекратяване на споделянето. Моля, провери дали файла съществува.</string>
<string name="unshare_link_file_error">Настъпи грешка при опита за премахване на споделянето на този файл или папка.</string>
<string name="share_link_file_no_exist">Неуспешен опит за споделяне. Моля, проверете съществува ли файла</string>
<string name="share_link_file_error">Възникна грешка при опита за споделяне на файл или папка</string>
<string name="unshare_link_file_no_exist">Неуспешен опит за премахване на споделянето. Моля, проверете съществува ли файла</string>
<string name="unshare_link_file_error">Настъпи грешка при опита за премахване на споделянето на файл или папк.</string>
<string name="update_link_file_no_exist">Не може да се актуализира. Моля, проверете дали файлът съществува</string>
<string name="update_link_file_error">Възникна грешка докато се опитва да обнови споделянето</string>
<string name="share_link_password_title">Въведи Парола</string>
<string name="share_link_empty_password">Вие трябва да въведете парола</string>
<string name="update_link_file_error">Възникна грешка при опитва да обновяване на споделянето</string>
<string name="share_link_password_title">Въведете парола</string>
<string name="share_link_empty_password">Трябва да въведете парола</string>
<string name="activity_chooser_send_file_title">Изпращане</string>
@ -307,55 +332,62 @@
<string name="clipboard_uxexpected_error">Неизвеста грешка при опит за копиране в клипборда</string>
<string name="clipboard_label">Текста е копиран от %1$s</string>
<string name="error_cant_bind_to_operations_service">Критична грешка: не може да изпълни операциите</string>
<string name="error_cant_bind_to_operations_service">Критична грешка: операциите не могат да бъдат изпълнени</string>
<string name="network_error_socket_exception">Настъпи грешка при свързването със сървъра.</string>
<string name="network_error_socket_timeout_exception">Настъпи грешка при свързването със сървъра, операцията не е изпълнена.</string>
<string name="network_error_connect_timeout_exception">Настъпи грешка при свързването със сървъра, операцията не е изпълнена.</string>
<string name="network_host_not_available">Неуспешно завършена операция, сървърът не е достъпен.</string>
<string name="network_error_socket_exception">Възникна грешка при свързването със сървъра.</string>
<string name="network_error_socket_timeout_exception">Възникна грешка при свързването със сървъра, операцията не е изпълнена.</string>
<string name="network_error_connect_timeout_exception">Възникна грешка при свързването със сървъра, операцията не е изпълнена.</string>
<string name="network_host_not_available">Неуспешно завършена операция, сървърът не е достъпен</string>
<string name="empty" />
<string name="forbidden_permissions">Нямате разрешен достъп до %s</string>
<string name="forbidden_permissions_rename">за преименуване на този файл</string>
<string name="forbidden_permissions_delete">за изтриване на този файл</string>
<string name="share_link_forbidden_permissions">за споделяне на този файл</string>
<string name="unshare_link_forbidden_permissions">за премахване споделянето на този файл</string>
<string name="update_link_forbidden_permissions">за обновяване на това споделяне</string>
<string name="forbidden_permissions">Нямате разрешение за достъп до %s</string>
<string name="forbidden_permissions_rename">за преименуване на файла</string>
<string name="forbidden_permissions_delete">за изтриване на файла</string>
<string name="share_link_forbidden_permissions">за споделяне на файла</string>
<string name="unshare_link_forbidden_permissions">за премахване споделянето на файла</string>
<string name="update_link_forbidden_permissions">за обновяване на споделянето</string>
<string name="forbidden_permissions_create">за създаване на файла</string>
<string name="uploader_upload_forbidden_permissions">за качване в тази папка</string>
<string name="downloader_download_file_not_found">Файлът вече не се намира на този сървър</string>
<string name="uploader_upload_forbidden_permissions">за качване в папката</string>
<string name="downloader_download_file_not_found">Файлът вече не се намира на сървъра</string>
<string name="prefs_category_accounts">Профили</string>
<string name="prefs_add_account">Добавяне на профил</string>
<string name="drawer_manage_accounts">Управление на профилите</string>
<string name="auth_redirect_non_secure_connection_title">Сигурна връзка е пренасочена по несигурен път.</string>
<string name="actionbar_logger">Доклади</string>
<string name="actionbar_logger">Журнали</string>
<string name="log_send_history_button">Изпрати историята</string>
<string name="log_send_no_mail_app">Не е намерено приложение за изпращане на логове. Моля инсталирайте e-mail приложение</string>
<string name="log_send_mail_subject">%1$s Android журнали на приложенията</string>
<string name="log_send_no_mail_app">Не е намерено приложение за изпращане на журнал. Моля инсталирайте имейл приложение.</string>
<string name="log_send_mail_subject">%1$s журнали от Android приложението</string>
<string name="log_progress_dialog_text">Зареждане на данни ...</string>
<string name="saml_authentication_required_text">Нужна е идентификация</string>
<string name="saml_authentication_wrong_pass">Грешна парола</string>
<string name="actionbar_move">Премести</string>
<string name="file_list_empty_moving">Тук няма нищо. Можеш да добавиш папка!</string>
<string name="actionbar_move">Преместване</string>
<string name="actionbar_copy">Копиране</string>
<string name="file_list_empty_moving">Тук няма нищо. Можете да добавите папка!</string>
<string name="folder_picker_choose_button_text">Избери</string>
<string name="move_file_not_found">Неуспешно преместване. Моля, провери дали файла съществува.</string>
<string name="move_file_invalid_into_descendent">Не е възможно да преместиш папка в нейна под папка.</string>
<string name="move_file_invalid_into_descendent">Не може да премествате папка в нейна подпапка.</string>
<string name="move_file_invalid_overwrite">Файлът вече съществува в отдалечената папка.</string>
<string name="move_file_error">Настъпи грешка при опита за преместване на този файл или папка.</string>
<string name="forbidden_permissions_move">за да преместиш този файл</string>
<string name="forbidden_permissions_move">за да преместите файла</string>
<string name="copy_file_not_found">Невъзможно копиране. Проверете дали файлът съществува</string>
<string name="copy_file_not_found">Невъзможно копиране. Проверете съществува ли файла</string>
<string name="copy_file_invalid_overwrite">Файлът вече съществува в отдалечената папка.</string>
<string name="prefs_category_details">Подробности</string>
<string name="copy_file_error">Възникна грешка при опита за копиране на файл или папка</string>
<string name="prefs_category_instant_uploading">Незабавни качвания</string>
<string name="prefs_category_details">Детайли</string>
<string name="shared_subject_header">споделен</string>
<string name="with_you_subject_header">с теб</string>
<string name="prefs_instant_video_upload_path_title">Папка за незабавно качените видео клипове</string>
<string name="shared_subject_header">споделен</string>
<string name="with_you_subject_header">с вас</string>
<string name="subject_user_shared_with_you">%1$s споделен \"%2$s\" с теб</string>
<string name="subject_user_shared_with_you">%1$s сподели с вас \"%2$s\"</string>
<string name="subject_shared_with_you">\"%1$s\" бе споделено с вас</string>
<string name="auth_refresh_button">Обнови връзката</string>
<string name="auth_host_address">Адрес на сървъра</string>
<string name="common_error_out_memory">Няма достатъчно памет</string>
@ -370,16 +402,61 @@
<string name="file_list__footer__files">%1$d файла</string>
<string name="file_list__footer__files_and_folder">%1$d файла, 1 папка</string>
<string name="file_list__footer__files_and_folders">%1$d файла, %2$d папки</string>
<string name="prefs_instant_behaviour_dialogTitle">Оригиналните файлове ще бъдат...</string>
<string name="prefs_instant_behaviour_title">Оригиналните файлове ще бъдат...</string>
<string name="upload_copy_files">Копирай файла</string>
<string name="upload_move_files">Премести файла</string>
<string name="select_all">Избере всички</string>
<string name="pref_behaviour_entries_keep_file">запазен в оригиналната папка</string>
<string name="pref_behaviour_entries_move">преместен в папката на приложението</string>
<string name="pref_behaviour_entries_delete_file">изтрит</string>
<string name="share_dialog_title">Споделяне</string>
<string name="share_file">Споделяне на %1$s</string>
<string name="share_with_user_section_title">Споделяне с потребители и групи</string>
<string name="share_add_user_or_group">Добавете потребител или група</string>
<string name="share_via_link_section_title">Връзка за споделяне</string>
<string name="share_via_link_expiration_date_label">Задаване на дата на изтичане</string>
<string name="share_via_link_password_label">Защитено с парола</string>
<string name="share_via_link_edit_permission_label">Позволяване на редактиране</string>
<string name="share_with_title">Споделете чрез ...</string>
<string name="share_with_edit_title">Споделете с %1$s</string>
<string name="share_search">Търсене</string>
<string name="search_users_and_groups_hint">Търсене за потребители и групи</string>
<string name="share_group_clarification">%1$s (група)</string>
<string name="share_sharee_unavailable">За съжаление версията на сървъра не позволява споделяне от клиента.
\\nМоля, уведомете системния админинстратор</string>
<string name="share_privilege_can_share">може да споделя</string>
<string name="share_privilege_can_edit">може да променя</string>
<string name="share_privilege_can_edit_create">създаване</string>
<string name="share_privilege_can_edit_change">промяна</string>
<string name="share_privilege_can_edit_delete">изтриване</string>
</resources>
<string name="manage_space_error">Изтриването на някои файлове не е възможно.</string>
<string name="permission_storage_access">Изискват се допълнителни разрешения за качване на и сваляне на файлове.</string>
<string name="local_file_not_found_toast">Файлът не е открит на локалната файлова система</string>
<string name="confirmation_remove_files_alert">Наистина ли желаете избраните елементи да бъдат премахнати?</string>
<string name="confirmation_remove_folders_alert">Наистина ли желаете избраните елементи и съдържанието им да бъдат премахнати?</string>
<string name="actionbar_search">Търсене</string>
<string name="files_drop_not_supported">Това е функционалност на Nextcloud, моля актуализирайте.</string>
<string name="learn_more">Научете повече</string>
<string name="drawer_participate">Участвайте</string>
<string name="participate_testing_headline">Помогнете с тестване</string>
<string name="participate_testing_bug_text">Открили сте грешка? Нещо е странно?</string>
<string name="participate_testing_report_text">Докладвайте за проблем чрез Github</string>
<string name="participate_testing_version_text">Заинтересован сте от възможността да тествате следващата версия?</string>
<string name="participate_beta_headline">Тестване на бета версия</string>
<string name="participate_contribute_irc_text">Присъединете се към IRC чата: &lt;a href=\"%1$s\">#nextcloud-mobile&lt;/a></string>
<string name="participate_contribute_forum_text">Помогнете на други във &lt;a href=\"%1$s>форума&lt;/a></string>
<string name="participate_contribute_translate_text">&lt;a href=\"%1$s>Преведете&lt;/a> приложението</string>
<string name="move_to">Преместване в...</string>
<string name="copy_to">Копиране в...</string>
<plurals name="items_selected_count">
<item quantity="one">%d избран</item>
<item quantity="other">%d избрани</item>
</plurals>
</resources>

View file

@ -37,7 +37,9 @@
<string name="prefs_log_title_history">Historial del registro</string>
<string name="prefs_log_summary_history">Esto muestra los registros grabados</string>
<string name="prefs_log_delete_history_button">Eliminar Historial</string>
<string name="prefs_calendar_contacts">Sincronizar calendario &amp; contactos</string>
<string name="prefs_calendar_contacts_no_store_error">No esta instalado ni la aplicación de Google Play o F-Droid</string>
<string name="prefs_calendar_contacts_sync_setup_successful">Calendario &amp; contactos se ha sincronizado exitosamente</string>
<string name="prefs_help">Ayuda</string>
<string name="prefs_recommend">Recomendar a un amigo</string>
<string name="prefs_feedback">Mensajes de retroalimentación</string>
@ -69,6 +71,10 @@
<string name="uploader_error_message_read_permission_not_granted">%1$s No está autorizado a leer el arcivo.</string>
<string name="uploader_error_message_source_file_not_found">El archivo a subir no se localiza. Compruebe que el archivo existe.</string>
<string name="uploader_error_message_source_file_not_copied">Ha ocurrido un error al copiar a la carpeta temporal. Por favor intentelo de nuevo.</string>
<string name="uploader_upload_files_behaviour">Configuraciones de subida:</string>
<string name="uploader_upload_files_behaviour_move_to_nextcloud_folder">Mover el fichero a la carpeta de Nextcloud</string>
<string name="uploader_upload_files_behaviour_only_upload">Mantener el fichero en la carpeta original</string>
<string name="uploader_upload_files_behaviour_upload_and_delete_from_source">Borrar fichero de la carpeta original</string>
<string name="file_list_seconds_ago">hace segundos</string>
<string name="file_list_empty">No hay nada aquí. ¡Suba algo!</string>
<string name="file_list_loading">Cargando...</string>
@ -460,8 +466,13 @@
<string name="local_file_not_found_toast">El archivo no se encuentra en el servidor local de archivos.</string>
<string name="confirmation_remove_files_alert">¿Está seguro de que quiere eliminar los elementos seleccionados?</string>
<string name="confirmation_remove_folders_alert">¿Está sguro de que quiere eliminar los elementos seleccionados y sus contenidos?</string>
<string name="uploads_view_upload_status_waiting_for_charging">Esperando a la carga del dispositivo</string>
<string name="actionbar_search">Buscar</string>
<string name="learn_more">Aprender mas</string>
<string name="drawer_participate">Participar</string>
<string name="participate_testing_headline">Ayúdanos a hacer pruebas</string>
<string name="participate_testing_report_text">Informa de un problema en Github</string>
<string name="participate_beta_headline">Probar la versión Beta</string>
<string name="move_to">Mover a&#8230;</string>
<string name="copy_to">Copiar a&#8230;</string>
<plurals name="items_selected_count">

View file

@ -37,6 +37,7 @@
<string name="prefs_log_title_history">Historique de la journalisation</string>
<string name="prefs_log_summary_history">Cela affiche les logs enregistrés</string>
<string name="prefs_log_delete_history_button">Supprimer l\'historique</string>
<string name="prefs_calendar_contacts_summary">Configurer DAVdroid (v1.3.0+) pour le compte actuel</string>
<string name="prefs_calendar_contacts_address_resolve_error">Une adresse de serveur pour le compte pourrait ne pas être résolue par DAVdroid</string>
<string name="prefs_calendar_contacts_no_store_error">Aucune application Google Play store ou F-Droid installée</string>
<string name="prefs_calendar_contacts_sync_setup_successful">La synchronisation de l\'agenda &amp; des contacts a bien été configurée.</string>

View file

@ -106,7 +106,7 @@
<string name="common_cancel_sync">Szinkronizálás megszakítása</string>
<string name="common_cancel">Mégsem</string>
<string name="common_back">Vissza</string>
<string name="common_save_exit">Mentés &amp; kilépés</string>
<string name="common_save_exit">Mentés és kilépés</string>
<string name="common_error">Hiba</string>
<string name="common_loading">Betöltés ...</string>
<string name="common_unknown">ismeretlen</string>
@ -466,7 +466,7 @@ Kérem keresse a rendszergazdát.</string>
<string name="manage_space_clear_data">Adatok törlése</string>
<string name="manage_space_error">Néhány fájl nem volt törölhető</string>
<string name="permission_storage_access">A fájlok letöltéséhez &amp; feltöltéséhez további jogosultságok szükségesek.</string>
<string name="permission_storage_access">A fájlok letöltéséhez és feltöltéséhez további jogosultságok szükségesek.</string>
<string name="local_file_not_found_toast">A fájl nem található a helyi fájlrendszerben</string>
<string name="confirmation_remove_files_alert">Biztos, hogy el akarod távolítani a kiválasztott elemeket?</string>
<string name="confirmation_remove_folders_alert">Biztos, hogy el akarod távolítani a kiválasztott elemeket és azok tartalmát?</string>

View file

@ -361,7 +361,7 @@
<string name="auth_redirect_non_secure_connection_title">Sikker tilkobling videresendes gjennom en usikker rute.</string>
<string name="actionbar_logger">Logger</string>
<string name="log_send_history_button">Send historik</string>
<string name="log_send_history_button">Send historikk </string>
<string name="log_send_no_mail_app">Ingen app for sending av logger funnet. Installer epost-app.</string>
<string name="log_send_mail_subject">%1$s Android app logger</string>
<string name="log_progress_dialog_text">Laster data ...</string>
@ -392,7 +392,7 @@
<string name="prefs_instant_video_upload_path_title">Mappe for umiddelbar opplasting av filmer</string>
<string name="sync_folder_failed_content">Synkronisering av %1$s mappe kunne ikke fullføres</string>
<string name="shared_subject_header">delte</string>
<string name="shared_subject_header">delt</string>
<string name="with_you_subject_header">med deg</string>
<string name="subject_user_shared_with_you">%1$s delte \"%2$s\" med deg</string>

View file

@ -483,8 +483,10 @@
<string name="participate_beta_headline">Testuj wersję Beta</string>
<string name="participate_release_candidate_headline">Wydanie kandydujące</string>
<string name="participate_contribute_headline">Aktywni członkowie projektu</string>
<string name="participate_contribute_irc_text">Dołącz do chatu (IRC): &lt;a href=\"%1$s\">#nextcloud-mobile&lt;/a></string>
<string name="participate_contribute_forum_text">Pomoż innym na &lt;a href=\"%1$s>forum&lt;/a></string>
<string name="participate_contribute_translate_text">&lt;a href=\"%1$s>Tłumacz&lt;/a> aplikację</string>
<string name="participate_contribute_github_text">Wspomóż nas jako programista, po więcej szczegółów odwiedź &lt;a href=\"https://github.com/nextcloud/android/blob/master/CONTRIBUTING.md\">CONTRIBUTING.md&lt;/a> </string>
<string name="move_to">Przenieś do&#8230;</string>
<string name="copy_to">Skopiuj do&#8230;</string>
<plurals name="items_selected_count">

View file

@ -36,6 +36,8 @@
<string name="prefs_log_title_history">История журналов</string>
<string name="prefs_log_summary_history">Здесь показаны записи в журнал</string>
<string name="prefs_log_delete_history_button">Удалить историю</string>
<string name="prefs_calendar_contacts">Синхронизировать календарь и контакты</string>
<string name="prefs_calendar_contacts_summary">Настроить DAVdroid (v1.3.0+) для текущего аккаунта</string>
<string name="prefs_calendar_contacts_address_resolve_error">Адрес сервера не может быть разрешён для DAVdroid</string>
<string name="prefs_calendar_contacts_no_store_error">Не установлен магазин Google Play или приложение F-Droid</string>
<string name="prefs_calendar_contacts_sync_setup_successful">Календарь &amp; контакты успешно синхронизированы</string>
@ -108,6 +110,7 @@
<string name="common_loading">Загрузка ...</string>
<string name="common_unknown">неизвестно</string>
<string name="common_error_unknown">Неизвестная ошибка</string>
<string name="common_pending">Ожидается</string>
<string name="about_title">О программе</string>
<string name="change_password">Сменить пароль</string>
<string name="delete_account">Удалить аккаунт</string>
@ -477,7 +480,11 @@
<string name="participate_testing_report_text">Сообщить о проблеме на Github</string>
<string name="participate_testing_version_text">Вам интересно участие в тестировании следующих версий?</string>
<string name="participate_beta_headline">Тестирование бета-версии</string>
<string name="participate_release_candidate_headline">Кандидат в релизы</string>
<string name="participate_contribute_headline">Активное участие</string>
<string name="participate_contribute_irc_text">Присоединиться к IRC-чату: &lt;a href=\"%1$s\">#nextcloud-mobile&lt;/a></string>
<string name="participate_contribute_forum_text">Помочь другим &lt;a href=\"%1$s>на форуме&lt;/a></string>
<string name="participate_contribute_translate_text">&lt;a href=\"%1$s>Перевести&lt;/a> приложение</string>
<string name="move_to">Переместить в&#8230;</string>
<string name="copy_to">Копировать в&#8230;</string>
<plurals name="items_selected_count">

View file

@ -1,57 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="about_android">Aplikacion %1$s Android</string>
<string name="about_android">Aplikacioni %1$s Android</string>
<string name="about_version">version %1$s</string>
<string name="actionbar_sync">Rifreskoni llogarinë</string>
<string name="actionbar_upload">Ngarkoni</string>
<string name="actionbar_upload_from_apps">Lëndë nga aplikacione të tjera</string>
<string name="actionbar_upload_files">Kartela</string>
<string name="actionbar_open_with">Hape me</string>
<string name="actionbar_open_with">Hapeni me</string>
<string name="actionbar_mkdir">Dosje e re</string>
<string name="actionbar_settings">Rregullime</string>
<string name="actionbar_settings">Rregullimet</string>
<string name="actionbar_see_details">Hollësi</string>
<string name="actionbar_send_file">Dërgoje</string>
<string name="actionbar_sort">Renditi</string>
<string name="actionbar_sort_title">Renditi sipas</string>
<string name="actionbar_send_file">Dërgojeni</string>
<string name="actionbar_sort">Renditni</string>
<string name="actionbar_sort_title">Renditni sipas</string>
<string name="menu_item_sort_by_name">A - Z</string>
<string name="menu_item_sort_by_date">Më e reja - Më e vjetra</string>
<string name="menu_item_sort_by_size">Më i madh - Më i vogël</string>
<string name="drawer_item_all_files">Krejt kartelat</string>
<string name="drawer_item_settings">Llogari</string>
<string name="drawer_item_uploads_list">Ngarkime</string>
<string name="drawer_close">Mbylle</string>
<string name="drawer_item_on_device">Në pajisjen</string>
<string name="drawer_item_settings">Rregullime</string>
<string name="drawer_item_uploads_list">Ngarkimet</string>
<string name="drawer_quota">%1$s e %2$s përdorur</string>
<string name="drawer_close">Mbylle</string>
<string name="drawer_open">Hape</string>
<string name="prefs_category_general">Të përgjithshme</string>
<string name="prefs_category_more">Më tepër</string>
<string name="prefs_accounts">Llogari</string>
<string name="prefs_manage_accounts">Administroni llogari</string>
<string name="prefs_accounts">Llogari</string>
<string name="prefs_manage_accounts">Administroni llogari</string>
<string name="prefs_passcode">Kyçje kodkalimi</string>
<string name="prefs_instant_upload">Ngarkime të menjëhershme fotosh</string>
<string name="prefs_instant_upload_summary">Ngarkoni menjëherë foto të bëra nga kamera</string>
<string name="prefs_instant_video_upload">Ngarkime të menjëhershme videosh</string>
<string name="prefs_instant_video_upload_summary">Ngarkoni menjëherë video të bëra nga kamera</string>
<string name="prefs_log_title">Aktivizo regjistrimet</string>
<string name="prefs_log_title">Aktivizoni regjistrimet</string>
<string name="prefs_log_summary">Kjo përdoret për të regjistruar probleme</string>
<string name="prefs_log_title_history">Historik regjistrimesh</string>
<string name="prefs_log_title_history">Historiku i regjistrimeve</string>
<string name="prefs_log_summary_history">Kjo shfaq regjistrimet e bëra</string>
<string name="prefs_log_delete_history_button">Fshije historikun</string>
<string name="prefs_log_delete_history_button">Fshini historikun</string>
<string name="prefs_calendar_contacts">Sinkronizoni kalendarin &amp; kontaktet</string>
<string name="prefs_calendar_contacts_address_resolve_error">Adresa e serverit për llogari nuk mund të zgjidhet për DAVdroid</string>
<string name="prefs_calendar_contacts_no_store_error">Nuk ka asnjë aplikacion të Google Play Store apo F-Droid të instaluar</string>
<string name="prefs_help">Ndihmë</string>
<string name="prefs_recommend">Këshillojani një shoku</string>
<string name="prefs_feedback">Përshtypje</string>
<string name="prefs_imprint">Imprint</string>
<string name="prefs_remember_last_share_location">Mba mend vend ndarjeje me të tjerët</string>
<string name="prefs_remember_last_share_location">Mbani mend vend ndarjejen me të tjerët</string>
<string name="prefs_remember_last_upload_location_summary">Mba mend vendin e fundit të ngarkimit për ndarje me të tjerët</string>
<string name="recommend_subject">Provojeni %1$s te telefoni juaj!</string>
<string name="recommend_text">Dua t\ju ftoj të përdorni %1$s në telefonin tuaj!\nShkarkojeni prej këtu: %2$s</string>
<string name="auth_check_server">Kontrollo shërbyesin</string>
<string name="auth_host_url">Adresë https://… e shërbyesit</string>
<string name="auth_host_url">Adresë https://… e serverit</string>
<string name="auth_username">Emër përdoruesi</string>
<string name="auth_password">Fjalëkalim</string>
<string name="auth_register">Rishtar te %1$s?</string>
<string name="sync_string_files">Kartela</string>
<string name="setup_btn_connect">Lidhuni</string>
<string name="uploader_btn_upload_text">Ngarkoni</string>
<string name="uploader_top_message">Zgjidhni dosje ngarkimi</string>
<string name="uploader_wrn_no_account_title">S\u gjet llogari</string>
<string name="uploader_btn_uploadTextSnippet_text">Krijoni një kartele tekst</string>
<string name="uploader_top_message">Zgjidhni një dosje ngarkimi</string>
<string name="uploader_wrn_no_account_title">Su gjet llogari</string>
<string name="uploader_wrn_no_account_text">Ska llogari %1$s te pajisja juaj. Ju lutemi, së pari krijoni një llogari.</string>
<string name="uploader_wrn_no_account_setup_btn_text">Rregullim</string>
<string name="uploader_wrn_no_account_quit_btn_text">Dilni</string>
@ -62,6 +71,10 @@
<string name="uploader_error_message_read_permission_not_granted">%1$s sështë lejuar të lexojë një kartelë të marrë</string>
<string name="uploader_error_message_source_file_not_found">Kartela për ngarkim su gjet te vendi i saj. Ju lutemi, shihni nëse ekziston apo jo kartela.</string>
<string name="uploader_error_message_source_file_not_copied">Ndodhi një gabim teksa kopjohej kartela te një dosje e përkohshme. Ju lutemi, provoni ta ridërgoni.</string>
<string name="uploader_upload_files_behaviour">Mundësitë e ngarkimit:</string>
<string name="uploader_upload_files_behaviour_move_to_nextcloud_folder">Lëviz kartelën tek dosja e Nextcloud-it</string>
<string name="uploader_upload_files_behaviour_only_upload">Mbani kartelën tek dosja burim</string>
<string name="uploader_upload_files_behaviour_upload_and_delete_from_source">Fshij kartelën nga dosja burim</string>
<string name="file_list_seconds_ago">sekonda më parë</string>
<string name="file_list_empty">Këtu nuk ka gjë. Ngarkoni diçka!</string>
<string name="file_list_loading">Po ngarkohet…</string>
@ -95,9 +108,11 @@
<string name="common_loading">Po ngarkohet …</string>
<string name="common_unknown">panjohur</string>
<string name="common_error_unknown">Gabim i panjohur</string>
<string name="common_pending">Në pritje</string>
<string name="about_title">Rreth</string>
<string name="change_password">Ndryshoni fjalëkalimin</string>
<string name="delete_account">Hiqe llogarinë</string>
<string name="delete_account_warning">Fshij llogarinë %s?\\n\\nFshirja nuk mund të zhbëhet.</string>
<string name="create_account">Krijoni llogari</string>
<string name="upload_chooser_title">Ngarkojeni prej …</string>
<string name="uploader_info_dirname">Emër dosjeje</string>
@ -222,6 +237,7 @@
<string name="unfavorite">Hiqeni si të passhëm jo në linjë</string>
<string name="common_rename">Riemërtojeni</string>
<string name="common_remove">Hiqe</string>
<string name="confirmation_remove_file_alert">Doni vërtet të hiqni %1$s?</string>
<string name="confirmation_remove_folder_alert">Doni vërtet të hiqet %1$s dhe lënda e tij?</string>
<string name="confirmation_remove_local">Vetëm vendorja</string>
<string name="remove_success_msg">Heqja doli me sukses</string>
@ -282,6 +298,8 @@
<string name="instant_upload_on_wifi">Fotot ngarkoji vetëm përmes wifi-it</string>
<string name="instant_video_upload_on_wifi">Videot ngarkoji vetëm përmes wifi-it</string>
<string name="instant_video_upload_on_charging">Ngarkoni vetëm kur jeni duke e karikuar</string>
<string name="instant_upload_on_charging">Ngarkoni vetëm kur jeni duke e karikuar</string>
<string name="instant_upload_path">/InstantUpload</string>
<string name="conflict_title">Përplasje kartelash</string>
<string name="conflict_message">Cilat kartela doni të mbani? Nëse përzgjidhni të dy versionet, kartelës vendore do t\i shtohet një numër te emri.</string>
@ -293,7 +311,11 @@
<string name="preview_image_error_unknown_format">Kjo figurë nuk mund të shfaqet</string>
<string name="error__upload__local_file_not_copied">%1$s s\u kopjua dot te dosja vendore %2$s</string>
<string name="share_link_no_support_share_api">Na ndjeni, ndarja me të tjerët s\është e aktivizuar te shërbyesi juaj. Ju lutemi, lidhuni me përgjegjësin tuaj.</string>
<string name="prefs_instant_upload_path_title">Dosja e ngarkimit të çastit </string>
<string name="prefs_instant_upload_path_use_subfolders_title">Përdorni nëndosjet</string>
<string name="prefs_instant_upload_path_use_subfolders_summary">Ruani në nëndosjet në bazë të vitit dhe muajit</string>
<string name="share_link_no_support_share_api">Na ndjeni, ndarja me të tjerët s\është e aktivizuar te shërbyesi juaj. Ju lutemi, lidhuni me përgjegjësin tuaj.</string>
<string name="share_link_file_no_exist">S\arrin të ndajë me të tjerët. Ju lutemi, kontrolloni nëse kartela ekziston apo jo</string>
<string name="share_link_file_error">Ndodhi një gabim teksa përpiqej të ndahej me të tjerët kjo kartelë apo dosje</string>
<string name="unshare_link_file_no_exist">S\arrin të zhbëjë ndarjen me të tjerët. Ju lutemi, kontrolloni nëse kartela ekziston</string>
@ -331,6 +353,7 @@
<string name="prefs_category_accounts">Llogari</string>
<string name="prefs_add_account">Shtoni llogari</string>
<string name="drawer_manage_accounts">Menaxhoni llogaritë</string>
<string name="auth_redirect_non_secure_connection_title">Lidhja e sigurt është ridrejtuar përmes një rruge të pasigurt.</string>
<string name="actionbar_logger">Regjistra</string>
@ -342,7 +365,8 @@
<string name="saml_authentication_required_text">Lypset mirëfilltësim</string>
<string name="saml_authentication_wrong_pass">Fjalëkalim i gabuar</string>
<string name="actionbar_move">Zhvendose</string>
<string name="file_list_empty_moving">S\ka gjë këtu. Mund të shtoni një dosje!</string>
<string name="actionbar_copy">Kopjoni</string>
<string name="file_list_empty_moving">S\ka gjë këtu. Mund të shtoni një dosje!</string>
<string name="folder_picker_choose_button_text">Zgjidhni</string>
<string name="move_file_not_found">S\arrin të zhvendosë. Ju lutemi, kontrolloni nëse ekziston apo jo kartela</string>
@ -361,7 +385,8 @@
<string name="prefs_category_instant_uploading">Ngarkime të atypëratyshme</string>
<string name="prefs_category_details">Hollësi</string>
<string name="sync_folder_failed_content">Njëkohësimi i dosjes %1$s su plotësua dot</string>
<string name="prefs_instant_video_upload_path_title">Dosja e ngarkimit të videove të çastit </string>
<string name="sync_folder_failed_content">Njëkohësimi i dosjes %1$s su plotësua dot</string>
<string name="shared_subject_header">ndarë</string>
<string name="with_you_subject_header">me ju</string>
@ -387,8 +412,12 @@
<string name="prefs_instant_behaviour_title">Kartela origjinale do të jetë&#8230;</string>
<string name="upload_copy_files">Kopjoje kartelën</string>
<string name="upload_move_files">Lëvize kartelën</string>
<string name="select_all">Zgjidhi të gjitha</string>
<string name="pref_behaviour_entries_keep_file">mbajtur në dosjen origjinale</string>
<string name="pref_behaviour_entries_move">u kalua te dosja e aplikacionit</string>
<string name="pref_behaviour_entries_delete_file">të fshira</string>
<string name="share_dialog_title">Ndarje me të tjerët</string>
<string name="share_file">Ndajeni %1$s</string>
<string name="share_with_user_section_title">Ndajeni me përdorues dhe grupe</string>
@ -399,6 +428,7 @@
<string name="share_via_link_password_label">Mbroje me fjalëkalim</string>
<string name="share_via_link_password_title">E siguruar</string>
<string name="share_via_link_edit_permission_label">Lejo përpunim</string>
<string name="share_via_link_hide_file_listing_permission_label">Fshihni listën e kartelave</string>
<string name="share_get_public_link_button">Merreni lidhjen</string>
<string name="share_with_title">Ndajeni me …</string>
<string name="share_with_edit_title">Ndajeni me %1$s</string>
@ -435,4 +465,30 @@
<string name="permission_storage_access">Që të ngarkoni &amp; shkarkoni kartela lypsen leje shtesë.</string>
<string name="local_file_not_found_toast">Kartela su gjet te sistemi vendor i kartelave</string>
</resources>
<string name="confirmation_remove_files_alert">A doni ju vërtetë të hiqni artikujt e zgjedhur?</string>
<string name="confirmation_remove_folders_alert">A doni ju vërtet të hiqni artikujt e zgjedhur dhe përmbajtjen e tyre?</string>
<string name="uploads_view_upload_status_waiting_for_charging">Duke pritur që pajisja të karikohet</string>
<string name="actionbar_search">Kërkoni</string>
<string name="files_drop_not_supported">Ky është një tipar i Nextcloud-it, ju lutemi përditësojeni.</string>
<string name="learn_more">Mësoni më shumë</string>
<string name="drawer_participate">Merni pjesë</string>
<string name="participate_testing_headline">Na ndihmoni me testimin</string>
<string name="participate_testing_bug_text">Gjetet një defekt? Diçka është e çuditshme?</string>
<string name="participate_testing_report_text">Raportoni një problem në Github</string>
<string name="participate_testing_version_text">Jeni të interesuar për të na ndihmuar në testimin e versionit të ardhshëm?</string>
<string name="participate_beta_headline">Testoni versionin Beta</string>
<string name="participate_release_candidate_headline">Lëshimi i kandidatit</string>
<string name="participate_release_candidate_text">Lëshimi i kandidatit (RC) është një fragment i lëshimit të ardhshme dhe pritet të jetë i qëndrueshëm. Testimi i setup-it tuaj individuale mund të ndihmojë për ta siguruar këtë. Regjistrohuni për testimin në Play Store ose manualisht shikoni në seksionin \"versionet\" në F-Droid.</string>
<string name="participate_contribute_headline">Kontribim aktiv</string>
<string name="participate_contribute_irc_text">Bashkohu në bisedat në IRC: &lt;a href=\"%1$s\">#nextcloud-mobile&lt;/a></string>
<string name="participate_contribute_forum_text">Ndihmo të tjerët në &lt;a href=\"%1$s>forum&lt;/a></string>
<string name="participate_contribute_translate_text">&lt;a href=\"%1$s>Translate&lt;/a> aplikacioni</string>
<string name="participate_contribute_github_text">Kontriboni si një zhvillues, shih&lt;a href=\"https://github.com/nextcloud/android/blob/master/CONTRIBUTING.md\">CONTRIBUTING.md&lt;/a> për detaje</string>
<string name="move_to">Levizni tek&#8230;</string>
<string name="copy_to">Kopjojeni tek&#8230;</string>
<plurals name="items_selected_count">
<item quantity="one">%d të përzgjedhura</item>
<item quantity="other">%d të përzgjedhura</item>
</plurals>
</resources>

View file

@ -28,6 +28,7 @@
<string name="prefs_accounts">Accounts</string>
<string name="prefs_manage_accounts">Manage accounts</string>
<string name="prefs_passcode">Passcode lock</string>
<string name="prefs_show_hidden_files">Show hidden files</string>
<string name="prefs_instant_upload">Instant picture uploads</string>
<string name="prefs_instant_upload_summary">Instantly upload pictures taken by camera</string>
<string name="prefs_instant_video_upload">Instant video uploads</string>

View file

@ -75,6 +75,7 @@
<PreferenceCategory android:title="@string/prefs_category_details">
<android.preference.CheckBoxPreference android:title="@string/prefs_passcode" android:key="set_pincode" />
<android.preference.CheckBoxPreference android:title="@string/prefs_show_hidden_files" android:key="show_hidden_files" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/prefs_category_more" android:key="more">

View file

@ -74,6 +74,10 @@ public abstract class PreferenceManager {
return PreferenceManager.getDefaultSharedPreferences(context).getBoolean("instant_video_upload_on_charging", false);
}
public static boolean showHiddenFilesEnabled(Context context) {
return PreferenceManager.getDefaultSharedPreferences(context).getBoolean("show_hidden_files_pref", false);
}
/**
* Gets the path where the user selected to do the last upload of a file shared from other app.
*

View file

@ -86,6 +86,7 @@ public class Preferences extends PreferenceActivity {
private Uri mUri;
private CheckBoxPreference pCode;
private CheckBoxPreference mShowHiddenFiles;
private Preference pAboutApp;
private AppCompatDelegate mDelegate;
@ -164,6 +165,19 @@ public class Preferences extends PreferenceActivity {
});
}
mShowHiddenFiles = (CheckBoxPreference) findPreference("show_hidden_files");
mShowHiddenFiles.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
SharedPreferences appPrefs =
PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = appPrefs.edit();
editor.putBoolean("show_hidden_files_pref", mShowHiddenFiles.isChecked());
editor.commit();
return true;
}
});
PreferenceCategory preferenceCategory = (PreferenceCategory) findPreference("more");
boolean calendarContactsEnabled = getResources().getBoolean(R.bool.calendar_contacts_enabled);

View file

@ -66,6 +66,7 @@ public class FileListListAdapter extends BaseAdapter implements FilterableListAd
private Vector<OCFile> mFilesAll = new Vector<OCFile>();
private Vector<OCFile> mFiles = null;
private boolean mJustFolders;
private boolean mShowHiddenFiles;
private FileDataStorageManager mStorageManager;
private Account mAccount;
@ -86,7 +87,10 @@ public class FileListListAdapter extends BaseAdapter implements FilterableListAd
// Read sorting order, default to sort by name ascending
FileStorageUtils.mSortOrder = PreferenceManager.getSortOrder(mContext);
FileStorageUtils.mSortAscending = PreferenceManager.getSortAscending(mContext);
// Fetch preferences for showing hidden files
mShowHiddenFiles = PreferenceManager.showHiddenFilesEnabled(mContext);
// initialise thumbnails cache on background thread
new ThumbnailsCacheManager.InitDiskCacheTask().execute();
}
@ -390,6 +394,10 @@ public class FileListListAdapter extends BaseAdapter implements FilterableListAd
if (mJustFolders) {
mFiles = getFolders(mFiles);
}
if (!mShowHiddenFiles) {
mFiles = filterHiddenFiles(mFiles);
}
} else {
mFiles = null;
}
@ -466,4 +474,23 @@ public class FileListListAdapter extends BaseAdapter implements FilterableListAd
}
notifyDataSetChanged();
}
/**
* Filter for hidden files
*
* @param files Collection of files to filter
* @return Non-hidden files
*/
public Vector<OCFile> filterHiddenFiles(Vector<OCFile> files) {
Vector<OCFile> ret = new Vector<>();
OCFile current;
for (int i = 0; i < files.size(); i++) {
current = files.get(i);
if (!current.isHidden()) {
ret.add(current);
}
}
return ret;
}
}

View file

@ -45,6 +45,7 @@ import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
import java.util.Vector;
/**
@ -290,6 +291,12 @@ public class LocalFileListAdapter extends BaseAdapter implements FilterableListA
mFiles = FileStorageUtils.sortLocalFolder(mFiles);
// Fetch preferences for showing hidden files
boolean showHiddenFiles = PreferenceManager.showHiddenFilesEnabled(mContext);
if (!showHiddenFiles) {
mFiles = filterHiddenFiles(mFiles);
}
mFilesAll.clear();
for (File mFile : mFiles) {
@ -325,4 +332,20 @@ public class LocalFileListAdapter extends BaseAdapter implements FilterableListA
}
notifyDataSetChanged();
}
/**
* Filter for hidden files
*
* @param files Array of files to filter
* @return Non-hidden files as an array
*/
public File[] filterHiddenFiles(File[] files) {
List<File> ret = new ArrayList<>();
for (File file: files) {
if (!file.isHidden()) {
ret.add(file);
}
}
return ret.toArray(new File[ret.size()]);
}
}

View file

@ -277,12 +277,8 @@ public class FileStorageUtils {
Collections.sort(files, new Comparator<OCFile>() {
public int compare(OCFile o1, OCFile o2) {
if (o1.getModificationTimestamp() == 0 || o2.getModificationTimestamp() == 0){
return 0;
} else {
Long obj1 = o1.getModificationTimestamp();
return multiplier * obj1.compareTo(o2.getModificationTimestamp());
}
Long obj1 = o1.getModificationTimestamp();
return multiplier * obj1.compareTo(o2.getModificationTimestamp());
}
});
@ -300,12 +296,8 @@ public class FileStorageUtils {
Collections.sort(files, new Comparator<File>() {
public int compare(File o1, File o2) {
if (o1.lastModified() == 0 || o2.lastModified() == 0){
return 0;
} else {
Long obj1 = o1.lastModified();
return multiplier * obj1.compareTo(o2.lastModified());
}
Long obj1 = o1.lastModified();
return multiplier * obj1.compareTo(o2.lastModified());
}
});
@ -324,13 +316,10 @@ public class FileStorageUtils {
if (o1.isFolder() && o2.isFolder()) {
Long obj1 = o1.getFileLength();
return multiplier * obj1.compareTo(o2.getFileLength());
}
else if (o1.isFolder()) {
} else if (o1.isFolder()) {
return -1;
} else if (o2.isFolder()) {
return 1;
} else if (o1.getFileLength() == 0 || o2.getFileLength() == 0){
return 0;
} else {
Long obj1 = o1.getFileLength();
return multiplier * obj1.compareTo(o2.getFileLength());
@ -354,13 +343,10 @@ public class FileStorageUtils {
if (o1.isDirectory() && o2.isDirectory()) {
Long obj1 = getFolderSize(o1);
return multiplier * obj1.compareTo(getFolderSize(o2));
}
else if (o1.isDirectory()) {
} else if (o1.isDirectory()) {
return -1;
} else if (o2.isDirectory()) {
return 1;
} else if (o1.length() == 0 || o2.length() == 0){
return 0;
} else {
Long obj1 = o1.length();
return multiplier * obj1.compareTo(o2.length());

4
suppressions.xml Normal file
View file

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8" ?>
<suppressions>
</suppressions>