mirror of
https://github.com/nextcloud/android.git
synced 2024-11-22 21:25:35 +03:00
Merge branch 'develop' of https://github.com/owncloud/android into multi2
This commit is contained in:
commit
c8af196f2a
95 changed files with 686 additions and 321 deletions
|
@ -7,9 +7,7 @@ android:
|
|||
- android-19
|
||||
before_install:
|
||||
- rm pom.xml
|
||||
- ./setup_env.sh gradle
|
||||
script:
|
||||
- ./gradlew clean build
|
||||
- ./setup_env.sh ant
|
||||
- ant clean
|
||||
- ant debug
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<manifest package="com.owncloud.android"
|
||||
android:versionCode="10600100"
|
||||
android:versionName="1.6.1" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
android:versionCode="10600200"
|
||||
android:versionName="1.6.2" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
|
||||
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
|
||||
|
@ -191,7 +191,11 @@
|
|||
android:icon="@drawable/copy_link"/>
|
||||
|
||||
<activity
|
||||
android:name=".ui.activity.MoveActivity"
|
||||
android:name=".ui.activity.FolderPickerActivity"
|
||||
android:label="@string/app_name"/>
|
||||
|
||||
<activity
|
||||
android:name=".ui.activity.UploadPathActivity"
|
||||
android:label="@string/app_name"/>
|
||||
|
||||
</application>
|
||||
|
|
|
@ -5,4 +5,4 @@ The app performs file synchronization with an ownCloud server. Other ownCloud fe
|
|||
Make sure you read [SETUP.md][1] when you start working on this project.
|
||||
|
||||
[0]: https://github.com/owncloud/core
|
||||
[1]: https://raw.github.com/owncloud/android/master/SETUP.md
|
||||
[1]: https://github.com/owncloud/android/blob/master/SETUP.md
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.owncloud.android.workaround.accounts"
|
||||
android:versionCode="0100019"
|
||||
android:versionName="1.0.19" >
|
||||
android:versionCode="0100020"
|
||||
android:versionName="1.0.20" >
|
||||
|
||||
<uses-sdk
|
||||
android:minSdkVersion="16"
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 7ff0bc0d837edea90b075140f8caba308ce7d378
|
||||
Subproject commit 8261865ff24c1bfc05be19ae9364a66dac8f26c3
|
|
@ -18,18 +18,18 @@
|
|||
android:orientation="horizontal" >
|
||||
|
||||
<Button
|
||||
android:id="@+id/move_files_btn_cancel"
|
||||
android:id="@+id/folder_picker_btn_cancel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:text="@string/common_cancel" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/move_files_btn_choose"
|
||||
android:id="@+id/folder_picker_btn_choose"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:text="@string/move_choose_button_text" />
|
||||
android:text="@string/folder_picker_choose_button_text" />
|
||||
|
||||
</LinearLayout>
|
||||
|
|
@ -11,5 +11,5 @@
|
|||
<string name="common_cancel">Kanseleer</string>
|
||||
<string name="common_error">Fout</string>
|
||||
<string name="empty"></string>
|
||||
<string name="move_choose_button_text">Kies</string>
|
||||
<string name="folder_picker_choose_button_text">Kies</string>
|
||||
</resources>
|
||||
|
|
|
@ -252,6 +252,6 @@
|
|||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">حسابات</string>
|
||||
<string name="saml_authentication_wrong_pass">كلمة مرور خاطئة</string>
|
||||
<string name="move_choose_button_text">اختيار</string>
|
||||
<string name="folder_picker_choose_button_text">اختيار</string>
|
||||
<string name="prefs_category_security">الأمان</string>
|
||||
</resources>
|
||||
|
|
|
@ -9,5 +9,5 @@
|
|||
<string name="common_ok">Добра</string>
|
||||
<string name="common_error">Памылка</string>
|
||||
<string name="empty"></string>
|
||||
<string name="move_choose_button_text">Выбар</string>
|
||||
<string name="folder_picker_choose_button_text">Выбар</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,9 @@
|
|||
<string name="file_list_empty">Тук няма нищо. Качете нещо!</string>
|
||||
<string name="file_list_loading">Зареждане...</string>
|
||||
<string name="local_file_list_empty">Няма файлове в тази папка.</string>
|
||||
<string name="file_list_folder">папка</string>
|
||||
<string name="file_list_folders">папки</string>
|
||||
<string name="file_list_file">файл</string>
|
||||
<string name="filedetails_select_file">Натисни върху файл, за да видиш допълнителна информация.</string>
|
||||
<string name="filedetails_size">Размер:</string>
|
||||
<string name="filedetails_type">Тип:</string>
|
||||
|
@ -284,7 +287,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Грешна парола</string>
|
||||
<string name="actionbar_move">Премести</string>
|
||||
<string name="file_list_empty_moving">Тук няма нищо. Можеш да добавиш папка!</string>
|
||||
<string name="move_choose_button_text">Избери</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_overwrite">Файлът вече съществува в отдалечената папка.</string>
|
||||
|
|
|
@ -265,7 +265,7 @@
|
|||
<string name="saml_authentication_wrong_pass">ভুল কুটশব্দ</string>
|
||||
<string name="actionbar_move">সরাও</string>
|
||||
<string name="file_list_empty_moving">এখানে কিছু নেই। একটি ফোল্ডার যোগ করতে পারেন!</string>
|
||||
<string name="move_choose_button_text">বেছে নিন</string>
|
||||
<string name="folder_picker_choose_button_text">বেছে নিন</string>
|
||||
<string name="move_file_not_found">সরাতে ব্যার্থ হলো। ফাইলটি রয়েছে কিনা দেখুন।</string>
|
||||
<string name="prefs_category_security">নিরাপত্তা</string>
|
||||
</resources>
|
||||
|
|
|
@ -54,6 +54,10 @@
|
|||
<string name="file_list_empty">Res per aquí. Pugeu alguna cosa!</string>
|
||||
<string name="file_list_loading">Carregant...</string>
|
||||
<string name="local_file_list_empty">No hi ha arxius a aquesta carpeta</string>
|
||||
<string name="file_list_folder">carpeta</string>
|
||||
<string name="file_list_folders">carpetes</string>
|
||||
<string name="file_list_file">fitxer</string>
|
||||
<string name="file_list_files">fitxers</string>
|
||||
<string name="filedetails_select_file">Feu clic en un fitxer per mostrar informació addicional.</string>
|
||||
<string name="filedetails_size">Mida:</string>
|
||||
<string name="filedetails_type">Tipus:</string>
|
||||
|
@ -262,6 +266,6 @@
|
|||
<string name="prefs_add_account">Afegeix compte</string>
|
||||
<string name="saml_authentication_required_text">Es requereix autenticació</string>
|
||||
<string name="saml_authentication_wrong_pass">Contrasenya incorrecta</string>
|
||||
<string name="move_choose_button_text">Escull</string>
|
||||
<string name="folder_picker_choose_button_text">Escull</string>
|
||||
<string name="prefs_category_security">Seguretat</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Žádný obsah. Nahrajte něco!</string>
|
||||
<string name="file_list_loading">Načítám...</string>
|
||||
<string name="local_file_list_empty">V tomto adresáři nejsou žádné soubory.</string>
|
||||
<string name="file_list_folder">adresář</string>
|
||||
<string name="file_list_folders">adresáře</string>
|
||||
<string name="file_list_file">soubor</string>
|
||||
<string name="file_list_files">soubory</string>
|
||||
<string name="filedetails_select_file">Více informací získáte klepnutím na soubor.</string>
|
||||
<string name="filedetails_size">Velikost:</string>
|
||||
<string name="filedetails_type">Typ:</string>
|
||||
|
@ -283,7 +287,7 @@ správce systému.</string>
|
|||
<string name="saml_authentication_wrong_pass">Nesprávné heslo</string>
|
||||
<string name="actionbar_move">Přesunout</string>
|
||||
<string name="file_list_empty_moving">Zde nic není. Můžete přidat adresář!</string>
|
||||
<string name="move_choose_button_text">Vybrat</string>
|
||||
<string name="folder_picker_choose_button_text">Vybrat</string>
|
||||
<string name="move_file_not_found">Nelze přesunout. Zkontrolujte prosím že soubor existuje</string>
|
||||
<string name="move_file_invalid_into_descendent">Není možné adresář přesunout do vlastního podadresáře</string>
|
||||
<string name="move_file_invalid_overwrite">Soubor již v cílovém adresáři existuje</string>
|
||||
|
@ -291,4 +295,5 @@ správce systému.</string>
|
|||
<string name="forbidden_permissions_move">pro přesun tohoto souboru</string>
|
||||
<string name="prefs_category_instant_uploading">Okamžitá odesílání</string>
|
||||
<string name="prefs_category_security">Zabezpečení</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Cesta pro nahrávání videí</string>
|
||||
</resources>
|
||||
|
|
|
@ -144,5 +144,5 @@
|
|||
<string name="activity_chooser_send_file_title">Anfon</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Cyfrifon</string>
|
||||
<string name="move_choose_button_text">Dewisiwch</string>
|
||||
<string name="folder_picker_choose_button_text">Dewisiwch</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Her er tomt. Upload noget!</string>
|
||||
<string name="file_list_loading">Indlæser...</string>
|
||||
<string name="local_file_list_empty">Der er ingen filer i denne mappe.</string>
|
||||
<string name="file_list_folder">mappe</string>
|
||||
<string name="file_list_folders">mapper</string>
|
||||
<string name="file_list_file">fil</string>
|
||||
<string name="file_list_files">filer</string>
|
||||
<string name="filedetails_select_file">Tryk på en fil for at vise yderligere information.</string>
|
||||
<string name="filedetails_size">Størelse:</string>
|
||||
<string name="filedetails_type">Type:</string>
|
||||
|
@ -282,7 +286,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Forkert kodeord</string>
|
||||
<string name="actionbar_move">Flyt</string>
|
||||
<string name="file_list_empty_moving">Der er intet her. Du kan tilføje en mappe!</string>
|
||||
<string name="move_choose_button_text">Vælg</string>
|
||||
<string name="folder_picker_choose_button_text">Vælg</string>
|
||||
<string name="move_file_not_found">Kan ikke flytte. Tjek venligst om filen findes</string>
|
||||
<string name="move_file_invalid_into_descendent">Det er ikke muligt at flytte en mappe til en undermappe</string>
|
||||
<string name="move_file_invalid_overwrite">Filen findes allerede i destinationsmappen</string>
|
||||
|
@ -290,4 +294,5 @@
|
|||
<string name="forbidden_permissions_move">til at flytte denne fil</string>
|
||||
<string name="prefs_category_instant_uploading">Øjeblikkelige uploads</string>
|
||||
<string name="prefs_category_security">Sikkerhed</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Sti til videoupload</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Alles leer. Laden Sie etwas hoch!</string>
|
||||
<string name="file_list_loading">Ladevorgang …</string>
|
||||
<string name="local_file_list_empty">Es befinden sich keine Dateien in diesem Ordner.</string>
|
||||
<string name="file_list_folder">Ordner</string>
|
||||
<string name="file_list_folders">Ordner</string>
|
||||
<string name="file_list_file">Datei</string>
|
||||
<string name="file_list_files">Dateien</string>
|
||||
<string name="filedetails_select_file">Klicken Sie auf eine Datei für weitere Informationen.</string>
|
||||
<string name="filedetails_size">Größe:</string>
|
||||
<string name="filedetails_type">Art:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Falsches Passwort</string>
|
||||
<string name="actionbar_move">Verschieben</string>
|
||||
<string name="file_list_empty_moving">Nichts vorhanden. Sie können einen Ordner hinzufügen!</string>
|
||||
<string name="move_choose_button_text">Auswählen</string>
|
||||
<string name="folder_picker_choose_button_text">Auswählen</string>
|
||||
<string name="move_file_not_found">Verschieben nicht möglich. Bitte überprüfen Sie, ob die Datei existiert</string>
|
||||
<string name="move_file_invalid_into_descendent">Es ist nicht möglich einen Ordner eine Ebene tiefer zu verschieben</string>
|
||||
<string name="move_file_invalid_overwrite">Die Datei ist bereits im Zielordner vorhanden</string>
|
||||
|
@ -292,4 +296,5 @@
|
|||
<string name="forbidden_permissions_move">um diese Datei zu verschieben</string>
|
||||
<string name="prefs_category_instant_uploading">Sofortiges Hochladen</string>
|
||||
<string name="prefs_category_security">Sicherheit</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Upload-Verzeichnis für Videos</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Alles leer. Lade etwas hoch!</string>
|
||||
<string name="file_list_loading">Ladevorgang …</string>
|
||||
<string name="local_file_list_empty">Es befinden sich keine Dateien in diesem Ordner.</string>
|
||||
<string name="file_list_folder">Ordner</string>
|
||||
<string name="file_list_folders">Ordner</string>
|
||||
<string name="file_list_file">Datei</string>
|
||||
<string name="file_list_files">Dateien</string>
|
||||
<string name="filedetails_select_file">Klicken Sie auf eine Datei für weitere Informationen.</string>
|
||||
<string name="filedetails_size">Größe:</string>
|
||||
<string name="filedetails_type">Art:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Falsches Passwort</string>
|
||||
<string name="actionbar_move">Verschieben</string>
|
||||
<string name="file_list_empty_moving">Nichts vorhanden. Du kannst einen Ordner hinzufügen!</string>
|
||||
<string name="move_choose_button_text">Auswählen</string>
|
||||
<string name="folder_picker_choose_button_text">Auswählen</string>
|
||||
<string name="move_file_not_found">Verschieben nicht möglich. Prüfe, dass die Datei existiert</string>
|
||||
<string name="move_file_invalid_into_descendent">Es ist nicht möglich, einen Ordner in einen seiner Unterordner zu verschieben</string>
|
||||
<string name="move_file_invalid_overwrite">Die Datei ist bereits im Zielordner vorhanden</string>
|
||||
|
|
|
@ -59,6 +59,10 @@
|
|||
<string name="file_list_empty">Δεν υπάρχει τίποτα εδώ. Ανεβάστε κάτι!</string>
|
||||
<string name="file_list_loading">Φόρτωση ...</string>
|
||||
<string name="local_file_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="filedetails_size">Μέγεθος:</string>
|
||||
<string name="filedetails_type">Τύπος:</string>
|
||||
|
@ -280,7 +284,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Εσφαλμένο συνθηματικό</string>
|
||||
<string name="actionbar_move">Μετακίνηση</string>
|
||||
<string name="file_list_empty_moving">Δεν υπάρχει τίποτα εδώ. Μπορείτε να προσθέσετε ένα φάκελο!</string>
|
||||
<string name="move_choose_button_text">Επιλέξτε</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_overwrite">Το αρχείο υπάρχει ήδη στο φάκελο προορισμού</string>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Nothing in here. Upload something!</string>
|
||||
<string name="file_list_loading">Loading...</string>
|
||||
<string name="local_file_list_empty">There are no files in this folder.</string>
|
||||
<string name="file_list_folder">folder</string>
|
||||
<string name="file_list_folders">folders</string>
|
||||
<string name="file_list_file">file</string>
|
||||
<string name="file_list_files">files</string>
|
||||
<string name="filedetails_select_file">Tap on a file to display additional information.</string>
|
||||
<string name="filedetails_size">Size:</string>
|
||||
<string name="filedetails_type">Type:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Incorrect password</string>
|
||||
<string name="actionbar_move">Move</string>
|
||||
<string name="file_list_empty_moving">Nothing in here. You can add a folder!</string>
|
||||
<string name="move_choose_button_text">Choose</string>
|
||||
<string name="folder_picker_choose_button_text">Choose</string>
|
||||
<string name="move_file_not_found">Unable to move. Please check whether the file exists</string>
|
||||
<string name="move_file_invalid_into_descendent">It is not possible to move a folder into a descendant</string>
|
||||
<string name="move_file_invalid_overwrite">The file exists already in the destination folder</string>
|
||||
|
@ -292,4 +296,5 @@
|
|||
<string name="forbidden_permissions_move">to move this file</string>
|
||||
<string name="prefs_category_instant_uploading">Instant Uploads</string>
|
||||
<string name="prefs_category_security">Security</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Upload Video Path</string>
|
||||
</resources>
|
||||
|
|
|
@ -38,6 +38,10 @@
|
|||
<string name="uploader_info_uploading">Alŝutante</string>
|
||||
<string name="file_list_seconds_ago">sekundoj antaŭe</string>
|
||||
<string name="file_list_empty">Nenio estas ĉi tie. Alŝutu ion!</string>
|
||||
<string name="file_list_folder">dosierujo</string>
|
||||
<string name="file_list_folders">dosierujoj</string>
|
||||
<string name="file_list_file">dosiero</string>
|
||||
<string name="file_list_files">dosieroj</string>
|
||||
<string name="filedetails_size">Grando:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
<string name="filedetails_created">Kreita je:</string>
|
||||
|
@ -188,6 +192,6 @@
|
|||
<string name="prefs_category_accounts">Kontoj</string>
|
||||
<string name="saml_authentication_required_text">Aŭtentiĝo nepras</string>
|
||||
<string name="saml_authentication_wrong_pass">Malĝusta pasvorto</string>
|
||||
<string name="move_choose_button_text">Elekti</string>
|
||||
<string name="folder_picker_choose_button_text">Elekti</string>
|
||||
<string name="prefs_category_security">Sekuro</string>
|
||||
</resources>
|
||||
|
|
|
@ -54,6 +54,10 @@
|
|||
<string name="file_list_empty">No hay nada. ¡Subí contenido!</string>
|
||||
<string name="file_list_loading">Cargando...</string>
|
||||
<string name="local_file_list_empty">No existen archivos en esta carpeta.</string>
|
||||
<string name="file_list_folder">carpeta</string>
|
||||
<string name="file_list_folders">carpetas</string>
|
||||
<string name="file_list_file">archivo</string>
|
||||
<string name="file_list_files">archivos</string>
|
||||
<string name="filedetails_select_file">Pulsá sobre un archivo para mostrar información adicional.</string>
|
||||
<string name="filedetails_size">Tamaño:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
|
@ -243,6 +247,6 @@
|
|||
<string name="prefs_category_accounts">Cuentas</string>
|
||||
<string name="saml_authentication_required_text">Autentificación requerida</string>
|
||||
<string name="saml_authentication_wrong_pass">Clave incorrecta</string>
|
||||
<string name="move_choose_button_text">Elegir</string>
|
||||
<string name="folder_picker_choose_button_text">Elegir</string>
|
||||
<string name="prefs_category_security">Seguridad</string>
|
||||
</resources>
|
||||
|
|
|
@ -169,5 +169,5 @@
|
|||
<string name="error__upload__local_file_not_copied">%1$s no pudo ser copiado a la carpeta local %2$s</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Cuentas</string>
|
||||
<string name="move_choose_button_text">Choose</string>
|
||||
<string name="folder_picker_choose_button_text">Choose</string>
|
||||
</resources>
|
||||
|
|
|
@ -217,6 +217,6 @@
|
|||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Cuentas</string>
|
||||
<string name="saml_authentication_wrong_pass">Contraseña incorrecta</string>
|
||||
<string name="move_choose_button_text">Seleccionar</string>
|
||||
<string name="folder_picker_choose_button_text">Seleccionar</string>
|
||||
<string name="prefs_category_security">Seguridad</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">No hay nada aquí. ¡Suba algo!</string>
|
||||
<string name="file_list_loading">Cargando...</string>
|
||||
<string name="local_file_list_empty">No hay archivos en esta carpeta.</string>
|
||||
<string name="file_list_folder">carpeta</string>
|
||||
<string name="file_list_folders">carpetas</string>
|
||||
<string name="file_list_file">archivo</string>
|
||||
<string name="file_list_files">archivos</string>
|
||||
<string name="filedetails_select_file">Pulsa sobre un archivo para mostrar información adicional.</string>
|
||||
<string name="filedetails_size">Tamaño:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Contraseña incorrecta</string>
|
||||
<string name="actionbar_move">Mover</string>
|
||||
<string name="file_list_empty_moving">Aquí no hay nada. ¡Puede agregar una carpeta!</string>
|
||||
<string name="move_choose_button_text">Seleccionar</string>
|
||||
<string name="folder_picker_choose_button_text">Seleccionar</string>
|
||||
<string name="move_file_not_found">No se puede mover. Revise si el archivo existe</string>
|
||||
<string name="move_file_invalid_into_descendent">No se puede mover una carpeta dentro de una de SUS subcarpetas.</string>
|
||||
<string name="move_file_invalid_overwrite">El archivo ya existe en la carpeta de destino</string>
|
||||
|
@ -292,4 +296,5 @@
|
|||
<string name="forbidden_permissions_move">para mover este archivo</string>
|
||||
<string name="prefs_category_instant_uploading">Subidas instantáneas</string>
|
||||
<string name="prefs_category_security">Seguridad</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Ruta de vídeo de subida</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Siin pole midagi. Lae midagi üles!</string>
|
||||
<string name="file_list_loading">Laen ...</string>
|
||||
<string name="local_file_list_empty">Kaustas pole faile.</string>
|
||||
<string name="file_list_folder">kaust</string>
|
||||
<string name="file_list_folders">kausta</string>
|
||||
<string name="file_list_file">fail</string>
|
||||
<string name="file_list_files">faili</string>
|
||||
<string name="filedetails_select_file">Lisainfo vaatamiseks vajuta failile.</string>
|
||||
<string name="filedetails_size">Suurus:</string>
|
||||
<string name="filedetails_type">Tüüp:</string>
|
||||
|
@ -288,7 +292,7 @@ Allpool on loend kohalikest failidest ning serveris asuvatest failidest %5$s, mi
|
|||
<string name="saml_authentication_wrong_pass">Vale parool</string>
|
||||
<string name="actionbar_move">Tõsta ümber</string>
|
||||
<string name="file_list_empty_moving">Siin pole midagi. Sa võid lisada kausta!</string>
|
||||
<string name="move_choose_button_text">Vali</string>
|
||||
<string name="folder_picker_choose_button_text">Vali</string>
|
||||
<string name="move_file_not_found">Liigutamine ebaõnnestus. Palun kontrolli, kas fail on olemas</string>
|
||||
<string name="move_file_invalid_into_descendent">Kausta ei saa liigutada selle alamkausta</string>
|
||||
<string name="move_file_invalid_overwrite">See fail on juba sihtkaustas olemas</string>
|
||||
|
|
|
@ -59,6 +59,10 @@
|
|||
<string name="file_list_empty">Ez dago ezer. Igo zerbait!</string>
|
||||
<string name="file_list_loading">Kargatzen...</string>
|
||||
<string name="local_file_list_empty">Ez dago fitxategirik karpeta honetan.</string>
|
||||
<string name="file_list_folder">karpeta</string>
|
||||
<string name="file_list_folders">Karpetak</string>
|
||||
<string name="file_list_file">fitxategia</string>
|
||||
<string name="file_list_files">fitxategiak</string>
|
||||
<string name="filedetails_select_file">Sakatu fitxategi baten gainean informazio gehiago lortzeko</string>
|
||||
<string name="filedetails_size">Tamaina:</string>
|
||||
<string name="filedetails_type">Mota:</string>
|
||||
|
@ -272,7 +276,7 @@ Mesedez, baimendu berriz</string>
|
|||
<string name="saml_authentication_required_text">Autentikazioa beharrezkoa</string>
|
||||
<string name="saml_authentication_wrong_pass">Pasahitz okerra</string>
|
||||
<string name="actionbar_move">Mugitu</string>
|
||||
<string name="move_choose_button_text">Aukeratu</string>
|
||||
<string name="folder_picker_choose_button_text">Aukeratu</string>
|
||||
<string name="prefs_category_instant_uploading">Berehalako Igoerak</string>
|
||||
<string name="prefs_category_security">Segurtasuna</string>
|
||||
</resources>
|
||||
|
|
|
@ -50,6 +50,10 @@
|
|||
<string name="file_list_empty">اینجا هیچ چیز نیست.</string>
|
||||
<string name="file_list_loading">درحال بارگذاری...</string>
|
||||
<string name="local_file_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="filedetails_size">اندازه</string>
|
||||
<string name="filedetails_type">نوع:</string>
|
||||
|
@ -234,6 +238,6 @@
|
|||
<string name="prefs_category_accounts">حسابها</string>
|
||||
<string name="saml_authentication_required_text">احراز هویت مورد نیاز است</string>
|
||||
<string name="saml_authentication_wrong_pass">رمز عبور اشتباه است</string>
|
||||
<string name="move_choose_button_text">انتخاب کردن</string>
|
||||
<string name="folder_picker_choose_button_text">انتخاب کردن</string>
|
||||
<string name="prefs_category_security">امنیت</string>
|
||||
</resources>
|
||||
|
|
|
@ -62,6 +62,10 @@
|
|||
<string name="file_list_empty">Täällä ei ole mitään. Lähetä tänne jotakin!</string>
|
||||
<string name="file_list_loading">Ladataan...</string>
|
||||
<string name="local_file_list_empty">Tässä kansiossa ei ole tiedostoja</string>
|
||||
<string name="file_list_folder">kansio</string>
|
||||
<string name="file_list_folders">kansiota</string>
|
||||
<string name="file_list_file">tiedosto</string>
|
||||
<string name="file_list_files">tiedostoa</string>
|
||||
<string name="filedetails_select_file">Napauta tiedostoa nähdäksesi lisätietoja.</string>
|
||||
<string name="filedetails_size">Koko:</string>
|
||||
<string name="filedetails_type">Tyyppi:</string>
|
||||
|
@ -261,7 +265,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Väärä salasana</string>
|
||||
<string name="actionbar_move">Siirrä</string>
|
||||
<string name="file_list_empty_moving">Täällä ei ole mitään. Voit lisätä kansion!</string>
|
||||
<string name="move_choose_button_text">Valitse</string>
|
||||
<string name="folder_picker_choose_button_text">Valitse</string>
|
||||
<string name="move_file_not_found">Siirto ei onnistu. Tarkista, ettei tiedostoa ole jo olemassa</string>
|
||||
<string name="move_file_invalid_overwrite">Tiedosto on jo olemassa kohdekansiossa</string>
|
||||
<string name="move_file_error">Tämän tiedoston tai kansion siirtoa yrittäessä tapahtui virhe</string>
|
||||
|
|
|
@ -64,6 +64,10 @@ Téléchargez-le ici : %2$s</string>
|
|||
<string name="file_list_empty">Il n\'y a rien ici ! Envoyez donc quelque chose :)</string>
|
||||
<string name="file_list_loading">Chargement…</string>
|
||||
<string name="local_file_list_empty">Aucun fichier n\'est présent dans ce dossier.</string>
|
||||
<string name="file_list_folder">dossier</string>
|
||||
<string name="file_list_folders">dossiers</string>
|
||||
<string name="file_list_file">fichier</string>
|
||||
<string name="file_list_files">fichiers</string>
|
||||
<string name="filedetails_select_file">Effleurez un fichier pour afficher les informations complémentaires</string>
|
||||
<string name="filedetails_size">Taille :</string>
|
||||
<string name="filedetails_type">Type :</string>
|
||||
|
@ -288,7 +292,7 @@ Ci-dessous la liste des fichiers locaux, et les fichiers distants dans %5$s auxq
|
|||
<string name="saml_authentication_wrong_pass">Mot de passe incorrect</string>
|
||||
<string name="actionbar_move">Déplacer</string>
|
||||
<string name="file_list_empty_moving">Il n\'y a rien ici. Vous pouvez ajouter un dossier !</string>
|
||||
<string name="move_choose_button_text">Choisir</string>
|
||||
<string name="folder_picker_choose_button_text">Choisir</string>
|
||||
<string name="move_file_not_found">Impossible de déplacer. Vérifiez que le fichier existe</string>
|
||||
<string name="move_file_invalid_into_descendent">Il n\'est pas possible de déplacer un dossier vers un de ses descendants</string>
|
||||
<string name="move_file_invalid_overwrite">Le fichier existe déjà dans le dossier de destination</string>
|
||||
|
|
|
@ -11,14 +11,20 @@
|
|||
<string name="actionbar_settings">Preferencias</string>
|
||||
<string name="actionbar_see_details">Detalles</string>
|
||||
<string name="actionbar_send_file">Enviar</string>
|
||||
<string name="actionbar_sort">Ordenar</string>
|
||||
<string name="actionbar_sort_title">Ordenar por</string>
|
||||
<string-array name="actionbar_sortby">
|
||||
<item>A-Z</item>
|
||||
<item>Máis novo - Máis antigo</item>
|
||||
</string-array>
|
||||
<!--TODO re-enable when server-side folder size calculation is available
|
||||
<item>Biggest - Smallest</item>-->
|
||||
<string name="prefs_category_general">Xeral</string>
|
||||
<string name="prefs_category_more">Máis</string>
|
||||
<string name="prefs_accounts">Contas</string>
|
||||
<string name="prefs_manage_accounts">Xestionar as contas</string>
|
||||
<string name="prefs_manage_accounts">Administrar as contas</string>
|
||||
<string name="prefs_pincode">PIN da aplicación</string>
|
||||
<string name="prefs_pincode_summary">Protexe o seu cliente</string>
|
||||
<string name="prefs_pincode_summary">Protexa o seu cliente</string>
|
||||
<string name="prefs_instant_upload">Envío instantáneo de fotos</string>
|
||||
<string name="prefs_instant_upload_summary">Enviar instantaneamente as fotos tiradas coa cámara</string>
|
||||
<string name="prefs_instant_video_upload">Envío instantáneo de vídeos</string>
|
||||
|
@ -32,7 +38,11 @@
|
|||
<string name="prefs_recommend">Recomendar a un amigo</string>
|
||||
<string name="prefs_feedback">Comentarios</string>
|
||||
<string name="prefs_imprint">Impresión</string>
|
||||
<string name="prefs_remember_last_share_location">Lembrar a localización da compartición</string>
|
||||
<string name="prefs_remember_last_upload_location_summary">Lembrar a localización do envío da última compartición</string>
|
||||
<string name="recommend_subject">Tente %1$s no seu teléfono intelixente!</string>
|
||||
<string name="recommend_text">Quero convidalo a empregar %1$s no seu teléfono intelixente!
|
||||
Descárgueo de aquí: %2$s</string>
|
||||
<string name="auth_check_server">Comprobar o servidor</string>
|
||||
<string name="auth_host_url">Enderezo do servidor https://…</string>
|
||||
<string name="auth_username">Nome de usuario</string>
|
||||
|
@ -54,6 +64,10 @@
|
|||
<string name="file_list_empty">Aquí non hai nada. Envíe algo!</string>
|
||||
<string name="file_list_loading">Cargando...</string>
|
||||
<string name="local_file_list_empty">Non hai ficheiros neste cartafol.</string>
|
||||
<string name="file_list_folder">cartafol</string>
|
||||
<string name="file_list_folders">cartafoles</string>
|
||||
<string name="file_list_file">ficheiro</string>
|
||||
<string name="file_list_files">ficheiros</string>
|
||||
<string name="filedetails_select_file">Prema nun ficheiro para que amose a información adicional.</string>
|
||||
<string name="filedetails_size">Tamaño:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
|
@ -106,6 +120,7 @@
|
|||
<string name="sync_fail_in_favourites_content">Non foi posíbel sincronizar o contido de %1$d ficheiros (%2$d conflitos)</string>
|
||||
<string name="sync_foreign_files_forgotten_ticker">Algúns ficheiros locais foron esquecidos</string>
|
||||
<string name="sync_foreign_files_forgotten_content">Non é posíbel copiar %1$d ficheiros do cartafol %2$s en</string>
|
||||
<string name="sync_foreign_files_forgotten_explanation">Desde a versión 1.3.16, os ficheiros enviados desde este dispositivo cópianse no cartafol local %1$s para evitar a perda de datos cando se sincroniza un ficheiro con varias contas.\n\nPor mor deste cambio, todos os ficheiros enviados coas versións anteriores desta aplicación cópianse no cartafol %2$s. Porén, un erro impediu a finalización desta operación durante a sincronización da conta. É posíbel deixar o(s) ficheiro(s) como está(n) e retirar a ligazón a %3$s, ou mover o(s) ficheiro(s) ao directorio %1$s e manter a ligazón a %4$s.\n\nA seguir enuméranse o(s) ficheiro(s) local(is), e o(s) ficheiro(s) remoto(s) en %5$s co(s) que estaba(n) ligado(s).</string>
|
||||
<string name="sync_current_folder_was_removed">O cartafol %1$s xa non existe</string>
|
||||
<string name="foreign_files_move">Mover todo</string>
|
||||
<string name="foreign_files_success">Foron movidos todos os ficheiros</string>
|
||||
|
@ -239,9 +254,12 @@
|
|||
<string name="preview_image_description">Vista previa da imaxe</string>
|
||||
<string name="preview_image_error_unknown_format">Esta imaxe non pode ser amosada</string>
|
||||
<string name="error__upload__local_file_not_copied">Non foi posíbel copiar %1$s no cartafol local %2$s</string>
|
||||
<string name="prefs_instant_upload_path_title">Enviar a ruta</string>
|
||||
<string name="share_link_no_support_share_api">O seu servidor non ten activada a opción de compartir. Póñase en contacto co
|
||||
administrador.</string>
|
||||
<string name="share_link_file_no_exist">Non foi posíbel compartir. Comprobe que existe o ficheiro</string>
|
||||
<string name="share_link_file_error">Produciuse un erro ao tentar compartir este ficheiro ou cartafol.</string>
|
||||
<string name="unshare_link_file_no_exist">Non foi posíbel deixar de compartir. Comprobe que existe o ficheiro</string>
|
||||
<string name="unshare_link_file_error">Produciuse un erro ao tentar deixar de compartir este ficheiro ou cartafol</string>
|
||||
<string name="activity_chooser_send_file_title">Enviar</string>
|
||||
<string name="copy_link">Copiar a ligazón</string>
|
||||
|
@ -262,9 +280,22 @@
|
|||
<string name="downloader_download_file_not_found">O ficheiro xa non está dispoñíbel no servidor</string>
|
||||
<string name="prefs_category_accounts">Contas</string>
|
||||
<string name="prefs_add_account">Engadir unha conta</string>
|
||||
<string name="auth_redirect_non_secure_connection_title">A conexión segura está a ser redirixida a unha ruta non segura.</string>
|
||||
<string name="actionbar_logger">Rexistros</string>
|
||||
<string name="log_send_history_button">Enviar o historial</string>
|
||||
<string name="log_mail_subject">Rexistros da app ownCloud Android</string>
|
||||
<string name="log_progress_dialog_text">Cargando os datos...</string>
|
||||
<string name="saml_authentication_required_text">Requírese autenticación</string>
|
||||
<string name="saml_authentication_wrong_pass">Contrasinal incorrecto</string>
|
||||
<string name="actionbar_move">Mover</string>
|
||||
<string name="move_choose_button_text">Escoller</string>
|
||||
<string name="file_list_empty_moving">Aquí non hai nada. Pode engadir un cartafol!</string>
|
||||
<string name="folder_picker_choose_button_text">Escoller</string>
|
||||
<string name="move_file_not_found">Non é posíbel movelo. Comprobe se existe o ficheiro</string>
|
||||
<string name="move_file_invalid_into_descendent">Non é posíbel mover un cartafol cara un descendente</string>
|
||||
<string name="move_file_invalid_overwrite">Este ficheiro xa existe no cartafol de destino</string>
|
||||
<string name="move_file_error">Produciuse un erro ao tentar mover este ficheiro ou cartafol.</string>
|
||||
<string name="forbidden_permissions_move">para mover este ficheiro</string>
|
||||
<string name="prefs_category_instant_uploading">Envío instantáneo</string>
|
||||
<string name="prefs_category_security">Seguranza</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Enviar a ruta do vídeo</string>
|
||||
</resources>
|
||||
|
|
|
@ -54,6 +54,10 @@
|
|||
<string name="file_list_empty">אין כאן שום דבר. אולי ברצונך להעלות משהו?</string>
|
||||
<string name="file_list_loading">בטעינה...</string>
|
||||
<string name="local_file_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="filedetails_size">גודל:</string>
|
||||
<string name="filedetails_type">סוג:</string>
|
||||
|
@ -263,6 +267,6 @@
|
|||
<string name="downloader_download_file_not_found">הקובץ אינו זמין יותר על השרת</string>
|
||||
<string name="prefs_category_accounts">חשבונות</string>
|
||||
<string name="prefs_add_account">הוספת חשבון</string>
|
||||
<string name="move_choose_button_text">בחירה</string>
|
||||
<string name="folder_picker_choose_button_text">בחירה</string>
|
||||
<string name="prefs_category_security">אבטחה</string>
|
||||
</resources>
|
||||
|
|
|
@ -19,6 +19,10 @@
|
|||
<string name="uploader_wrn_no_account_quit_btn_text">Izlaz</string>
|
||||
<string name="file_list_seconds_ago">prije par sekundi</string>
|
||||
<string name="file_list_empty">Nema ničega u ovoj mapi. Pošalji nešto!</string>
|
||||
<string name="file_list_folder">mapa</string>
|
||||
<string name="file_list_folders">mape</string>
|
||||
<string name="file_list_file">datoteka</string>
|
||||
<string name="file_list_files">datoteke</string>
|
||||
<string name="filedetails_download">Preuzimanje</string>
|
||||
<string name="action_share_file">Podijelite vezu</string>
|
||||
<string name="common_yes">Da</string>
|
||||
|
@ -38,6 +42,6 @@
|
|||
<string name="prefs_category_accounts">Korisnićki računi</string>
|
||||
<string name="saml_authentication_required_text">Potrebna autentikacija</string>
|
||||
<string name="saml_authentication_wrong_pass">Pogrešna lozinka</string>
|
||||
<string name="move_choose_button_text">Izaberi</string>
|
||||
<string name="folder_picker_choose_button_text">Odaberite</string>
|
||||
<string name="prefs_category_security">Sigurnost</string>
|
||||
</resources>
|
||||
|
|
|
@ -54,6 +54,10 @@
|
|||
<string name="file_list_empty">Itt nincs semmi. Töltsön fel valamit!</string>
|
||||
<string name="file_list_loading">Betöltés...</string>
|
||||
<string name="local_file_list_empty">Nincs fájl ebben a mappában.</string>
|
||||
<string name="file_list_folder">mappa</string>
|
||||
<string name="file_list_folders">mappák</string>
|
||||
<string name="file_list_file">fájl</string>
|
||||
<string name="file_list_files">fájlok</string>
|
||||
<string name="filedetails_select_file">Érintsen meg egy fájlt a további információkért.</string>
|
||||
<string name="filedetails_size">Méret:</string>
|
||||
<string name="filedetails_type">Tipus:</string>
|
||||
|
@ -244,6 +248,6 @@
|
|||
<string name="prefs_category_accounts">Fiókok</string>
|
||||
<string name="saml_authentication_required_text">Felhasználóazonosítás szükséges</string>
|
||||
<string name="saml_authentication_wrong_pass">Hibás jelszó</string>
|
||||
<string name="move_choose_button_text">Válasszon</string>
|
||||
<string name="folder_picker_choose_button_text">Válasszon</string>
|
||||
<string name="prefs_category_security">Biztonság</string>
|
||||
</resources>
|
||||
|
|
|
@ -29,5 +29,5 @@
|
|||
<string name="uploader_info_dirname">Nomine de dossier</string>
|
||||
<string name="activity_chooser_send_file_title">Invia</string>
|
||||
<string name="empty"></string>
|
||||
<string name="move_choose_button_text">Seliger</string>
|
||||
<string name="folder_picker_choose_button_text">Seliger</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Tidak ada apa-apa di sini. Unggah sesuatu!</string>
|
||||
<string name="file_list_loading">Memuat...</string>
|
||||
<string name="local_file_list_empty">Tidak ada satupun berkas dalam folder ini.</string>
|
||||
<string name="file_list_folder">folder</string>
|
||||
<string name="file_list_folders">folder-folder</string>
|
||||
<string name="file_list_file">berkas</string>
|
||||
<string name="file_list_files">berkas-berkas</string>
|
||||
<string name="filedetails_select_file">Sentuh pada berkas untuk menampilkan informasi tambahan</string>
|
||||
<string name="filedetails_size">Ukuran:</string>
|
||||
<string name="filedetails_type">Tipe:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Sandi salah</string>
|
||||
<string name="actionbar_move">Pindah</string>
|
||||
<string name="file_list_empty_moving">Tdak ada apapun disini. Anda dapat menambahkan sebuah folder!</string>
|
||||
<string name="move_choose_button_text">Pilih</string>
|
||||
<string name="folder_picker_choose_button_text">Pilih</string>
|
||||
<string name="move_file_not_found">Tidak dapat memindahkan. Silakan periksa apakah berkas ada</string>
|
||||
<string name="move_file_invalid_into_descendent">Tidak mungkin untuk memindahkan folder kedalam turunannya</string>
|
||||
<string name="move_file_invalid_overwrite">Berkas sudah ada didalam folder tujuan</string>
|
||||
|
|
|
@ -27,5 +27,5 @@
|
|||
<string name="common_remove">Fjarlægja</string>
|
||||
<string name="activity_chooser_send_file_title">Senda</string>
|
||||
<string name="empty"></string>
|
||||
<string name="move_choose_button_text">Veldu</string>
|
||||
<string name="folder_picker_choose_button_text">Veldu</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Non c\'è niente qui. Carica qualcosa!</string>
|
||||
<string name="file_list_loading">Caricamento in corso...</string>
|
||||
<string name="local_file_list_empty">Non ci sono file in questa cartella.</string>
|
||||
<string name="file_list_folder">cartella</string>
|
||||
<string name="file_list_folders">cartelle</string>
|
||||
<string name="file_list_file">file</string>
|
||||
<string name="file_list_files">file</string>
|
||||
<string name="filedetails_select_file">Tocca un file per visualizzare informazioni aggiuntive.</string>
|
||||
<string name="filedetails_size">Dimensione:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Password errata</string>
|
||||
<string name="actionbar_move">Sposta</string>
|
||||
<string name="file_list_empty_moving">Qui non c\'è niente. Puoi aggiungere una cartella.</string>
|
||||
<string name="move_choose_button_text">Scegli</string>
|
||||
<string name="folder_picker_choose_button_text">Scegli</string>
|
||||
<string name="move_file_not_found">Impossibile spostare. Assicurati che il file esista</string>
|
||||
<string name="move_file_invalid_into_descendent">Impossibile spostare una cartella in una cartella inferiore</string>
|
||||
<string name="move_file_invalid_overwrite">Il file esiste già nella cartella di destinazione</string>
|
||||
|
|
|
@ -64,6 +64,10 @@
|
|||
<string name="file_list_empty">ここには何もありません。何かアップロードしてください。</string>
|
||||
<string name="file_list_loading">読込中 ...</string>
|
||||
<string name="local_file_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="filedetails_size">サイズ:</string>
|
||||
<string name="filedetails_type">タイプ:</string>
|
||||
|
@ -285,7 +289,7 @@
|
|||
<string name="saml_authentication_wrong_pass">無効なパスワード</string>
|
||||
<string name="actionbar_move">移動</string>
|
||||
<string name="file_list_empty_moving">ファイルが有りません。フォルダを追加してください。</string>
|
||||
<string name="move_choose_button_text">選択</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_overwrite">そのファイルは、宛先フォルダに既に存在しています。</string>
|
||||
|
|
|
@ -151,6 +151,6 @@
|
|||
<string name="clipboard_text_copied">კოპირებულია კლიპბორდში</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">ანგარიში</string>
|
||||
<string name="move_choose_button_text">არჩევა</string>
|
||||
<string name="folder_picker_choose_button_text">არჩევა</string>
|
||||
<string name="prefs_category_security">უსაფრთხოება</string>
|
||||
</resources>
|
||||
|
|
|
@ -85,6 +85,6 @@
|
|||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">គណនី</string>
|
||||
<string name="saml_authentication_wrong_pass">ខុសពាក្យសម្ងាត់</string>
|
||||
<string name="move_choose_button_text">ជ្រើស</string>
|
||||
<string name="folder_picker_choose_button_text">ជ្រើស</string>
|
||||
<string name="prefs_category_security">សុវត្ថិភាព</string>
|
||||
</resources>
|
||||
|
|
|
@ -47,6 +47,10 @@
|
|||
<string name="uploader_info_uploading">업로드 중</string>
|
||||
<string name="file_list_seconds_ago">초 전</string>
|
||||
<string name="file_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="filedetails_size">크기:</string>
|
||||
<string name="filedetails_type">종류:</string>
|
||||
|
@ -219,6 +223,6 @@
|
|||
<string name="prefs_category_accounts">계정</string>
|
||||
<string name="saml_authentication_required_text">인증 필요함</string>
|
||||
<string name="saml_authentication_wrong_pass">잘못된 암호</string>
|
||||
<string name="move_choose_button_text">선택</string>
|
||||
<string name="folder_picker_choose_button_text">선택</string>
|
||||
<string name="prefs_category_security">보안</string>
|
||||
</resources>
|
||||
|
|
|
@ -26,6 +26,10 @@
|
|||
<string name="uploader_info_uploading">Eroplueden</string>
|
||||
<string name="file_list_seconds_ago">Sekonnen hir</string>
|
||||
<string name="file_list_empty">Hei ass näischt. Lued eppes rop!</string>
|
||||
<string name="file_list_folder">Dossier</string>
|
||||
<string name="file_list_folders">Dossieren</string>
|
||||
<string name="file_list_file">Datei</string>
|
||||
<string name="file_list_files">Dateien</string>
|
||||
<string name="filedetails_size">Gréisst:</string>
|
||||
<string name="filedetails_type">Typ:</string>
|
||||
<string name="filedetails_created">Erstallt:</string>
|
||||
|
@ -87,5 +91,5 @@
|
|||
<string name="activity_chooser_send_file_title">Schécken</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Accounten</string>
|
||||
<string name="move_choose_button_text">Auswielen</string>
|
||||
<string name="folder_picker_choose_button_text">Auswielen</string>
|
||||
</resources>
|
||||
|
|
|
@ -54,6 +54,10 @@
|
|||
<string name="file_list_empty">Čia tuščia. Įkelkite ką nors!</string>
|
||||
<string name="file_list_loading">Įkeliama ...</string>
|
||||
<string name="local_file_list_empty">Šiame aplanke nėra failų.</string>
|
||||
<string name="file_list_folder">katalogas</string>
|
||||
<string name="file_list_folders">katalogai</string>
|
||||
<string name="file_list_file">failas</string>
|
||||
<string name="file_list_files">failai</string>
|
||||
<string name="filedetails_select_file">Palieskite failą, kad parodyti papildomą informaciją.</string>
|
||||
<string name="filedetails_size">Dydis:</string>
|
||||
<string name="filedetails_type">Tipas:</string>
|
||||
|
@ -236,6 +240,6 @@
|
|||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Paskyros</string>
|
||||
<string name="saml_authentication_wrong_pass">Neteisingas slaptažodis</string>
|
||||
<string name="move_choose_button_text">Pasirinkite</string>
|
||||
<string name="folder_picker_choose_button_text">Pasirinkite</string>
|
||||
<string name="prefs_category_security">Saugumas</string>
|
||||
</resources>
|
||||
|
|
|
@ -30,6 +30,10 @@
|
|||
<string name="uploader_info_uploading">Augšupielādē</string>
|
||||
<string name="file_list_seconds_ago">sekundes atpakaļ</string>
|
||||
<string name="file_list_empty">Te vēl nekas nav. Rīkojies, sāc augšupielādēt!</string>
|
||||
<string name="file_list_folder">mape</string>
|
||||
<string name="file_list_folders">mapes</string>
|
||||
<string name="file_list_file">fails</string>
|
||||
<string name="file_list_files">faili</string>
|
||||
<string name="filedetails_select_file">Uzsitiet uz datnes, lai redzētu papildinformāciju.</string>
|
||||
<string name="filedetails_size">Izmērs:</string>
|
||||
<string name="filedetails_type">Tips:</string>
|
||||
|
@ -145,6 +149,6 @@
|
|||
<string name="activity_chooser_send_file_title">Sūtīt</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Konti</string>
|
||||
<string name="move_choose_button_text">Izvēlieties</string>
|
||||
<string name="folder_picker_choose_button_text">Izvēlieties</string>
|
||||
<string name="prefs_category_security">Drošība</string>
|
||||
</resources>
|
||||
|
|
|
@ -30,6 +30,10 @@
|
|||
<string name="uploader_wrn_no_account_quit_btn_text">Прекини</string>
|
||||
<string name="file_list_seconds_ago">пред секунди</string>
|
||||
<string name="file_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_size">Големина:</string>
|
||||
<string name="filedetails_type">Тип:</string>
|
||||
<string name="filedetails_created">Создадено:</string>
|
||||
|
@ -124,6 +128,6 @@
|
|||
<string name="prefs_category_accounts">Сметки</string>
|
||||
<string name="saml_authentication_required_text">Потребна е автентификација</string>
|
||||
<string name="saml_authentication_wrong_pass">Погрешна лозинка</string>
|
||||
<string name="move_choose_button_text">Избери</string>
|
||||
<string name="folder_picker_choose_button_text">Избери</string>
|
||||
<string name="prefs_category_security">Безбедност</string>
|
||||
</resources>
|
||||
|
|
|
@ -20,6 +20,10 @@
|
|||
<string name="uploader_wrn_no_account_quit_btn_text">Berhenti</string>
|
||||
<string name="uploader_info_uploading">Memuatnaik</string>
|
||||
<string name="file_list_empty">Tiada apa-apa di sini. Muat naik sesuatu!</string>
|
||||
<string name="file_list_folder">direktori</string>
|
||||
<string name="file_list_folders">direktori</string>
|
||||
<string name="file_list_file">fail</string>
|
||||
<string name="file_list_files">fail</string>
|
||||
<string name="filedetails_size">Saiz</string>
|
||||
<string name="filedetails_type">Jenis</string>
|
||||
<string name="filedetails_created">Telah dibina:</string>
|
||||
|
|
|
@ -14,5 +14,5 @@
|
|||
<string name="common_ok">အိုကေ</string>
|
||||
<string name="common_cancel">ပယ်ဖျက်မည်</string>
|
||||
<string name="empty"></string>
|
||||
<string name="move_choose_button_text">ရွေးချယ်</string>
|
||||
<string name="folder_picker_choose_button_text">ရွေးချယ်</string>
|
||||
</resources>
|
||||
|
|
|
@ -55,6 +55,10 @@
|
|||
<string name="file_list_empty">Ingenting her. Last opp noe!</string>
|
||||
<string name="file_list_loading">Laster...</string>
|
||||
<string name="local_file_list_empty">Det er ingen filer i denne mappen.</string>
|
||||
<string name="file_list_folder">mappe</string>
|
||||
<string name="file_list_folders">mapper</string>
|
||||
<string name="file_list_file">fil</string>
|
||||
<string name="file_list_files">filer</string>
|
||||
<string name="filedetails_select_file">Trykk på en fil for å vise ekstra informasjon.</string>
|
||||
<string name="filedetails_size">Størrelse:</string>
|
||||
<string name="filedetails_type">Type:</string>
|
||||
|
@ -274,7 +278,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Feil passord</string>
|
||||
<string name="actionbar_move">Flytt</string>
|
||||
<string name="file_list_empty_moving">Ingenting her. Du kan legge til en mappe!</string>
|
||||
<string name="move_choose_button_text">Velg</string>
|
||||
<string name="folder_picker_choose_button_text">Velg</string>
|
||||
<string name="move_file_not_found">Kan ikke flytte. Sjekk om filen eksisterer.</string>
|
||||
<string name="move_file_invalid_into_descendent">Det er ikke mulig å flytte en mappe inn i sin egen undermappe</string>
|
||||
<string name="move_file_invalid_overwrite">Filen finnes allerede i målmappen</string>
|
||||
|
|
|
@ -64,6 +64,10 @@ Download hier: %2$s</string>
|
|||
<string name="file_list_empty">Er bevindt zich hier niets. Upload een bestand!</string>
|
||||
<string name="file_list_loading">Laden ...</string>
|
||||
<string name="local_file_list_empty">Er staan geen bestanden in deze map.</string>
|
||||
<string name="file_list_folder">map</string>
|
||||
<string name="file_list_folders">mappen</string>
|
||||
<string name="file_list_file">bestand</string>
|
||||
<string name="file_list_files">bestanden</string>
|
||||
<string name="filedetails_select_file">Druk op een bestand om extra informatie weer te geven</string>
|
||||
<string name="filedetails_size">Grootte:</string>
|
||||
<string name="filedetails_type">Type:</string>
|
||||
|
@ -287,7 +291,7 @@ Hieronder staan de lokale bestanden en de externe bestanden in %5$s waar ze naar
|
|||
<string name="saml_authentication_wrong_pass">Onjuist wachtwoord</string>
|
||||
<string name="actionbar_move">verplaatsen</string>
|
||||
<string name="file_list_empty_moving">Niets hier. U kunt een map toevoegen!</string>
|
||||
<string name="move_choose_button_text">Kies</string>
|
||||
<string name="folder_picker_choose_button_text">Kies</string>
|
||||
<string name="move_file_not_found">Kan niet verplaatsen. Ga na of het bestand wel bestaat</string>
|
||||
<string name="move_file_invalid_into_descendent">De map kan niet naar een onderliggende map worden verplaatst</string>
|
||||
<string name="move_file_invalid_overwrite">Het bestand bestaat al in de doelmap</string>
|
||||
|
|
|
@ -131,6 +131,6 @@
|
|||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Kontoar</string>
|
||||
<string name="saml_authentication_wrong_pass">Feil passord</string>
|
||||
<string name="move_choose_button_text">Vel</string>
|
||||
<string name="folder_picker_choose_button_text">Vel</string>
|
||||
<string name="prefs_category_security">Tryggleik</string>
|
||||
</resources>
|
||||
|
|
|
@ -21,6 +21,10 @@
|
|||
<string name="uploader_info_uploading">Al amontcargar</string>
|
||||
<string name="file_list_seconds_ago">segonda a</string>
|
||||
<string name="file_list_empty">Pas res dedins. Amontcarga qualquaren</string>
|
||||
<string name="file_list_folder">Dorsièr</string>
|
||||
<string name="file_list_folders">Dorsièrs</string>
|
||||
<string name="file_list_file">fichièr</string>
|
||||
<string name="file_list_files">fichièrs</string>
|
||||
<string name="filedetails_size">Talha :</string>
|
||||
<string name="filedetails_type">Tipe :</string>
|
||||
<string name="filedetails_created">Creat :</string>
|
||||
|
@ -44,5 +48,5 @@
|
|||
<string name="common_rename">Torna nomenar</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Comptes</string>
|
||||
<string name="move_choose_button_text">Causís</string>
|
||||
<string name="folder_picker_choose_button_text">Causís</string>
|
||||
</resources>
|
||||
|
|
|
@ -122,5 +122,5 @@
|
|||
<string name="activity_chooser_send_file_title">ਭੇਜੋ</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">ਅਕਾਊਂਟ</string>
|
||||
<string name="move_choose_button_text">ਚੁਣੋ</string>
|
||||
<string name="folder_picker_choose_button_text">ਚੁਣੋ</string>
|
||||
</resources>
|
||||
|
|
|
@ -61,6 +61,10 @@
|
|||
<string name="file_list_empty">Pusto. Wyślij coś!</string>
|
||||
<string name="file_list_loading">Ładowanie...</string>
|
||||
<string name="local_file_list_empty">Nie ma plików w tym folderze.</string>
|
||||
<string name="file_list_folder">folder</string>
|
||||
<string name="file_list_folders">foldery</string>
|
||||
<string name="file_list_file">plik</string>
|
||||
<string name="file_list_files">pliki</string>
|
||||
<string name="filedetails_select_file">Dotknij plik aby wyświetlić dodatkowe informacje</string>
|
||||
<string name="filedetails_size">Rozmiar:</string>
|
||||
<string name="filedetails_type">Typ:</string>
|
||||
|
@ -282,7 +286,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Złe hasło</string>
|
||||
<string name="actionbar_move">Przenieś</string>
|
||||
<string name="file_list_empty_moving">Nic tu nie ma. Możesz dodać folder!</string>
|
||||
<string name="move_choose_button_text">Wybierz</string>
|
||||
<string name="folder_picker_choose_button_text">Wybierz</string>
|
||||
<string name="move_file_not_found">Nie można przenieść. Proszę sprawdzić, czy plik istnieje</string>
|
||||
<string name="move_file_invalid_into_descendent">Nie jest możliwe przeniesienie folderu do potomka</string>
|
||||
<string name="move_file_invalid_overwrite">Plik istnieje już w folderze docelowym</string>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Nada aqui. Envie alguma coisa!</string>
|
||||
<string name="file_list_loading">Carregando...</string>
|
||||
<string name="local_file_list_empty">Não existe nenhum arquivo nesta pasta.</string>
|
||||
<string name="file_list_folder">pasta</string>
|
||||
<string name="file_list_folders">pastas</string>
|
||||
<string name="file_list_file">arquivo</string>
|
||||
<string name="file_list_files">arquivos</string>
|
||||
<string name="filedetails_select_file">Toque em um arquivo para mostrar informações adicionais.</string>
|
||||
<string name="filedetails_size">Tamanho:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Senha incorreta</string>
|
||||
<string name="actionbar_move">Mover</string>
|
||||
<string name="file_list_empty_moving">Nada aqui. Você pode adicionar uma pasta!</string>
|
||||
<string name="move_choose_button_text">Escolher</string>
|
||||
<string name="folder_picker_choose_button_text">Escolher</string>
|
||||
<string name="move_file_not_found">Não é possível mover. Por favor verifique se o arquivo existe</string>
|
||||
<string name="move_file_invalid_into_descendent">Não é possível mover a pasta para uma descendente</string>
|
||||
<string name="move_file_invalid_overwrite">O arquivo já existe na pasta de destino</string>
|
||||
|
@ -292,4 +296,5 @@
|
|||
<string name="forbidden_permissions_move">mover este arquivo</string>
|
||||
<string name="prefs_category_instant_uploading">Envios Instantâneos</string>
|
||||
<string name="prefs_category_security">Segurança</string>
|
||||
<string name="prefs_instant_video_upload_path_title">Enviar o Caminho do Vídeo</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Vazio. Envie alguma coisa!</string>
|
||||
<string name="file_list_loading">A carregar ...</string>
|
||||
<string name="local_file_list_empty">Não existem ficheiros nesta pasta.</string>
|
||||
<string name="file_list_folder">pasta</string>
|
||||
<string name="file_list_folders">pastas</string>
|
||||
<string name="file_list_file">ficheiro</string>
|
||||
<string name="file_list_files">ficheiros</string>
|
||||
<string name="filedetails_select_file">Clique no ficheiro para visualizar informação adicional.</string>
|
||||
<string name="filedetails_size">Tamanho:</string>
|
||||
<string name="filedetails_type">Tipo:</string>
|
||||
|
@ -282,7 +286,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Palavra-passe errada</string>
|
||||
<string name="actionbar_move">Mover</string>
|
||||
<string name="file_list_empty_moving">Não está aqui nada. Pode adicionar uma pasta!</string>
|
||||
<string name="move_choose_button_text">Escolher</string>
|
||||
<string name="folder_picker_choose_button_text">Escolher</string>
|
||||
<string name="move_file_not_found">Não é possível mover. Por favor, verifique se o ficheiro existe</string>
|
||||
<string name="move_file_invalid_into_descendent">Não é possível mover esta pasta deste modo</string>
|
||||
<string name="move_file_invalid_overwrite">O ficheiro já existe na pasta de destino</string>
|
||||
|
|
|
@ -56,6 +56,10 @@
|
|||
<string name="file_list_empty">Nimic aici. Încarcă ceva!</string>
|
||||
<string name="file_list_loading">Se incarca</string>
|
||||
<string name="local_file_list_empty">In acest folder nu sunt fisiere.</string>
|
||||
<string name="file_list_folder">director</string>
|
||||
<string name="file_list_folders">directoare</string>
|
||||
<string name="file_list_file">fișier</string>
|
||||
<string name="file_list_files">fișiere</string>
|
||||
<string name="filedetails_select_file">Selectati un fisier pentru a afisa informatia aditionala</string>
|
||||
<string name="filedetails_size">Mărime:</string>
|
||||
<string name="filedetails_type">Tip:</string>
|
||||
|
@ -268,7 +272,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Parolă greșită</string>
|
||||
<string name="actionbar_move">Mutare</string>
|
||||
<string name="file_list_empty_moving">Nu este nimic aici. Poți adăuga un director!</string>
|
||||
<string name="move_choose_button_text">Alege</string>
|
||||
<string name="folder_picker_choose_button_text">Alege</string>
|
||||
<string name="forbidden_permissions_move">pentru a muta acest fișier</string>
|
||||
<string name="prefs_category_security">Securitate</string>
|
||||
</resources>
|
||||
|
|
|
@ -62,6 +62,10 @@
|
|||
<string name="file_list_empty">Здесь ничего нет. Загрузите что-нибудь!</string>
|
||||
<string name="file_list_loading">Загрузка...</string>
|
||||
<string name="local_file_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="filedetails_size">Размер:</string>
|
||||
<string name="filedetails_type">Тип:</string>
|
||||
|
@ -282,7 +286,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Неправильный пароль</string>
|
||||
<string name="actionbar_move">Переместить</string>
|
||||
<string name="file_list_empty_moving">Здесь ничего нет. Вы можете добавить папку!</string>
|
||||
<string name="move_choose_button_text">Выбрать</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_overwrite">Файл уже существует в папке назначения</string>
|
||||
|
|
|
@ -23,6 +23,10 @@
|
|||
<string name="uploader_info_uploading">උඩුගතවේ</string>
|
||||
<string name="file_list_seconds_ago">තත්පරයන්ට පෙර</string>
|
||||
<string name="file_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="filedetails_size">විශාලත්වය:</string>
|
||||
<string name="filedetails_type">ගණය:</string>
|
||||
|
@ -76,5 +80,5 @@
|
|||
<string name="ssl_validator_btn_details_hide">සඟවන්න</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">ගිණුම්</string>
|
||||
<string name="move_choose_button_text">තෝරන්න</string>
|
||||
<string name="folder_picker_choose_button_text">තෝරන්න</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Žiadny súbor. Nahrajte niečo!</string>
|
||||
<string name="file_list_loading">Nahráva sa...</string>
|
||||
<string name="local_file_list_empty">V tomto priečinku nie sú žiadne súbory.</string>
|
||||
<string name="file_list_folder">priečinok</string>
|
||||
<string name="file_list_folders">priečinky</string>
|
||||
<string name="file_list_file">súbor</string>
|
||||
<string name="file_list_files">súbory</string>
|
||||
<string name="filedetails_select_file">Viac informácií získate kliknutím na súbor.</string>
|
||||
<string name="filedetails_size">Veľkosť:</string>
|
||||
<string name="filedetails_type">Typ:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Nesprávne heslo</string>
|
||||
<string name="actionbar_move">Presunúť</string>
|
||||
<string name="file_list_empty_moving">Nič tu nie je. Pridajte priečinok!</string>
|
||||
<string name="move_choose_button_text">Vybrať</string>
|
||||
<string name="folder_picker_choose_button_text">Vybrať</string>
|
||||
<string name="move_file_not_found">Nemožno presunúť. Skontrolujte, či súbor existuje</string>
|
||||
<string name="move_file_invalid_into_descendent">Priečinok nemožno presunúť do vlastného podpriečinka</string>
|
||||
<string name="move_file_invalid_overwrite">Súbor už v cieľovom priečinku existuje</string>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Tukaj še ni ničesar. Najprej je treba datoteke poslati v oblak!</string>
|
||||
<string name="file_list_loading">Poteka nalaganje ...</string>
|
||||
<string name="local_file_list_empty">V tej mapi ni datotek.</string>
|
||||
<string name="file_list_folder">mapa</string>
|
||||
<string name="file_list_folders">mape</string>
|
||||
<string name="file_list_file">datoteka</string>
|
||||
<string name="file_list_files">datoteke</string>
|
||||
<string name="filedetails_select_file">Pritisnite na datoteko za prikaz dodatnih podrobnosti.</string>
|
||||
<string name="filedetails_size">Velikost:</string>
|
||||
<string name="filedetails_type">Vrsta:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Napačno geslo</string>
|
||||
<string name="actionbar_move">Premakni</string>
|
||||
<string name="file_list_empty_moving">Ni vsebine in datotek. Lahko ustvarite na primer mapo.</string>
|
||||
<string name="move_choose_button_text">Izbor</string>
|
||||
<string name="folder_picker_choose_button_text">Izbor</string>
|
||||
<string name="move_file_not_found">Ni mogoče premakniti datoteke. Preverite, ali obstaja.</string>
|
||||
<string name="move_file_invalid_into_descendent">Ni mogoče premakniti mape v podrejeno mapo.</string>
|
||||
<string name="move_file_invalid_overwrite">Datoteka v ciljni mapi že obstaja.</string>
|
||||
|
|
|
@ -75,6 +75,6 @@
|
|||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Llogarit</string>
|
||||
<string name="saml_authentication_wrong_pass">Fjalëkalim i gabuar</string>
|
||||
<string name="move_choose_button_text">Zgjidh</string>
|
||||
<string name="folder_picker_choose_button_text">Zgjidh</string>
|
||||
<string name="prefs_category_security">Siguria</string>
|
||||
</resources>
|
||||
|
|
|
@ -57,5 +57,5 @@
|
|||
<string name="activity_chooser_send_file_title">Pošalji</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Nalozi</string>
|
||||
<string name="move_choose_button_text">Izaberi</string>
|
||||
<string name="folder_picker_choose_button_text">Izaberi</string>
|
||||
</resources>
|
||||
|
|
|
@ -111,6 +111,6 @@
|
|||
<string name="activity_chooser_send_file_title">Пошаљи</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Налози</string>
|
||||
<string name="move_choose_button_text">Одабери</string>
|
||||
<string name="folder_picker_choose_button_text">Одабери</string>
|
||||
<string name="prefs_category_security">Безбедност</string>
|
||||
</resources>
|
||||
|
|
|
@ -55,6 +55,10 @@
|
|||
<string name="file_list_empty">Ingenting här. Ladda upp något!</string>
|
||||
<string name="file_list_loading">Laddar...</string>
|
||||
<string name="local_file_list_empty">Det finns inga filer i den här mappen.</string>
|
||||
<string name="file_list_folder">mapp</string>
|
||||
<string name="file_list_folders">mappar</string>
|
||||
<string name="file_list_file">fil</string>
|
||||
<string name="file_list_files">filer</string>
|
||||
<string name="filedetails_select_file">Peka på en fil för att visa mer information.</string>
|
||||
<string name="filedetails_size">Storlek:</string>
|
||||
<string name="filedetails_type">Typ:</string>
|
||||
|
@ -268,7 +272,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Fel lösenord</string>
|
||||
<string name="actionbar_move">Flytta</string>
|
||||
<string name="file_list_empty_moving">Ingenting här. Du kan skapa en mapp!</string>
|
||||
<string name="move_choose_button_text">Välj</string>
|
||||
<string name="folder_picker_choose_button_text">Välj</string>
|
||||
<string name="move_file_not_found">Gick inte att flytta. Vänligen kontrollera att filen existerar</string>
|
||||
<string name="forbidden_permissions_move">att flytta den här filen</string>
|
||||
<string name="prefs_category_security">Säkerhet</string>
|
||||
|
|
|
@ -139,5 +139,5 @@
|
|||
<string name="conflict_dont_upload">பதிவேற்ற வேண்டாம்</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">கணக்குகள்</string>
|
||||
<string name="move_choose_button_text">தெரிவுசெய்க </string>
|
||||
<string name="folder_picker_choose_button_text">தெரிவுசெய்க </string>
|
||||
</resources>
|
||||
|
|
|
@ -31,6 +31,10 @@
|
|||
<string name="uploader_info_uploading">กำลังอัพโหลด</string>
|
||||
<string name="file_list_seconds_ago">วินาที ก่อนหน้านี้</string>
|
||||
<string name="file_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="filedetails_size">ขนาด:</string>
|
||||
<string name="filedetails_type">ชนิด:</string>
|
||||
|
@ -152,5 +156,5 @@
|
|||
<string name="activity_chooser_send_file_title">ส่ง</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">บัญชี</string>
|
||||
<string name="move_choose_button_text">เลือก</string>
|
||||
<string name="folder_picker_choose_button_text">เลือก</string>
|
||||
</resources>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">Burada hiçbir şey yok. Bir şeyler yükleyin!</string>
|
||||
<string name="file_list_loading">Yükleniyor...</string>
|
||||
<string name="local_file_list_empty">Bu klasörde dosya yok.</string>
|
||||
<string name="file_list_folder">klasör</string>
|
||||
<string name="file_list_folders">klasörler</string>
|
||||
<string name="file_list_file">dosya</string>
|
||||
<string name="file_list_files">dosyalar</string>
|
||||
<string name="filedetails_select_file">Ek bilgileri görmek için dosyaya dokunun.</string>
|
||||
<string name="filedetails_size">Boyut:</string>
|
||||
<string name="filedetails_type">Tür:</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Hatalı parola</string>
|
||||
<string name="actionbar_move">Taşı</string>
|
||||
<string name="file_list_empty_moving">Burada bir şey yok. Bir klasör ekleyebilirsiniz!</string>
|
||||
<string name="move_choose_button_text">Seç</string>
|
||||
<string name="folder_picker_choose_button_text">Seç</string>
|
||||
<string name="move_file_not_found">Taşıma başarısız. Lütfen dosyanın mevcut olup olmadığını denetleyin</string>
|
||||
<string name="move_file_invalid_into_descendent">Klasörü, kendi alt klasörüne taşımak mümkün değil</string>
|
||||
<string name="move_file_invalid_overwrite">Dosya zaten hedef klasörde mevcut</string>
|
||||
|
|
|
@ -61,6 +61,10 @@
|
|||
<string name="file_list_empty">Тут нічого немає. Відвантажте що-небудь!</string>
|
||||
<string name="file_list_loading">Завантаження...</string>
|
||||
<string name="local_file_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="filedetails_size">Розмір:</string>
|
||||
<string name="filedetails_type">Тип:</string>
|
||||
|
@ -281,7 +285,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Невірний пароль</string>
|
||||
<string name="actionbar_move">Перемістити</string>
|
||||
<string name="file_list_empty_moving">Тут нічого немає. Ви можете додати теку!</string>
|
||||
<string name="move_choose_button_text">Обрати</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_overwrite">Файл вже існує в теці призначення</string>
|
||||
|
|
|
@ -20,5 +20,5 @@
|
|||
<string name="common_error_unknown">غیر معروف خرابی</string>
|
||||
<string name="activity_chooser_send_file_title">بھجیں</string>
|
||||
<string name="empty"></string>
|
||||
<string name="move_choose_button_text">منتخب کریں</string>
|
||||
<string name="folder_picker_choose_button_text">منتخب کریں</string>
|
||||
</resources>
|
||||
|
|
|
@ -47,6 +47,10 @@
|
|||
<string name="uploader_info_uploading">Đang tải lên</string>
|
||||
<string name="file_list_seconds_ago">vài giây trước</string>
|
||||
<string name="file_list_empty">Không có gì ở đây .Hãy tải lên một cái gì đó !</string>
|
||||
<string name="file_list_folder">folder</string>
|
||||
<string name="file_list_folders">folders</string>
|
||||
<string name="file_list_file">file</string>
|
||||
<string name="file_list_files">files</string>
|
||||
<string name="filedetails_select_file">Tap vào một tập tin để hiển thị thêm thông tin</string>
|
||||
<string name="filedetails_size">Kích thước:</string>
|
||||
<string name="filedetails_type">Loại:</string>
|
||||
|
@ -219,5 +223,5 @@
|
|||
<string name="activity_chooser_send_file_title">Gởi</string>
|
||||
<string name="empty"></string>
|
||||
<string name="prefs_category_accounts">Tài khoản</string>
|
||||
<string name="move_choose_button_text">Chọn</string>
|
||||
<string name="folder_picker_choose_button_text">Chọn</string>
|
||||
</resources>
|
||||
|
|
|
@ -56,6 +56,10 @@
|
|||
<string name="file_list_empty">这里还什么都没有。上传些东西吧!</string>
|
||||
<string name="file_list_loading">载入中....</string>
|
||||
<string name="local_file_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="filedetails_size">大小:</string>
|
||||
<string name="filedetails_type">类型:</string>
|
||||
|
@ -274,7 +278,7 @@
|
|||
<string name="saml_authentication_wrong_pass">错误密码</string>
|
||||
<string name="actionbar_move">移动</string>
|
||||
<string name="file_list_empty_moving">这里还什么都没有。上传些东西吧!</string>
|
||||
<string name="move_choose_button_text">选择(&C)...</string>
|
||||
<string name="folder_picker_choose_button_text">选择(&C)...</string>
|
||||
<string name="move_file_not_found">无法移动。请检查文件是否存在</string>
|
||||
<string name="move_file_invalid_into_descendent">b不能够把一个目录移动到它的下级</string>
|
||||
<string name="move_file_invalid_overwrite">该文件已经存在在目标文件夹</string>
|
||||
|
|
|
@ -63,6 +63,10 @@
|
|||
<string name="file_list_empty">這裡還沒有東西,上傳一些吧!</string>
|
||||
<string name="file_list_loading">載入中…</string>
|
||||
<string name="local_file_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="filedetails_size">容量:</string>
|
||||
<string name="filedetails_type">類型:</string>
|
||||
|
@ -238,8 +242,8 @@
|
|||
<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">只透過無線網路來執行即時影像上傳的功能</string>
|
||||
<string name="instant_upload_on_wifi">只使用 WiFi 來執行即時圖片上傳的功能</string>
|
||||
<string name="instant_video_upload_on_wifi">只使用 WiFi 來執行即時影像上傳的功能</string>
|
||||
<string name="instant_upload_path">/InstantUpload</string>
|
||||
<string name="conflict_title">更新衝突</string>
|
||||
<string name="conflict_message">遠端檔案 %s 未同步到本地. 繼續將取代伺服器上的文件.</string>
|
||||
|
@ -284,7 +288,7 @@
|
|||
<string name="saml_authentication_wrong_pass">密碼錯誤</string>
|
||||
<string name="actionbar_move">移動</string>
|
||||
<string name="file_list_empty_moving">找不到任何檔案. 你可以新增一個目錄!</string>
|
||||
<string name="move_choose_button_text">選擇</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_overwrite">這個檔案已經存在於目的目錄中</string>
|
||||
|
|
|
@ -311,7 +311,7 @@
|
|||
<string name="saml_authentication_wrong_pass">Wrong password</string>
|
||||
<string name="actionbar_move">Move</string>
|
||||
<string name="file_list_empty_moving">Nothing in here. You can add a folder!</string>
|
||||
<string name="move_choose_button_text">Choose</string>
|
||||
<string name="folder_picker_choose_button_text">Choose</string>
|
||||
|
||||
<string name="move_file_not_found">Unable to move. Please check whether the file exists</string>
|
||||
<string name="move_file_invalid_into_descendent">It is not possible to move a folder into a descendant</string>
|
||||
|
@ -321,4 +321,7 @@
|
|||
|
||||
<string name="prefs_category_instant_uploading">Instant Uploads</string>
|
||||
<string name="prefs_category_security">Security</string>
|
||||
|
||||
<string name="prefs_instant_video_upload_path_title">Upload Video Path</string>
|
||||
|
||||
</resources>
|
||||
|
|
|
@ -32,9 +32,9 @@
|
|||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory android:title="@string/prefs_category_instant_uploading">
|
||||
<EditTextPreference android:title="@string/prefs_instant_upload_path_title"
|
||||
android:defaultValue="@string/instant_upload_path"
|
||||
android:key="instant_upload_path"/>
|
||||
<com.owncloud.android.ui.PreferenceWithLongSummary
|
||||
android:title="@string/prefs_instant_upload_path_title"
|
||||
android:key="instant_upload_path" />
|
||||
<com.owncloud.android.ui.CheckBoxPreferenceWithLongTitle android:key="instant_uploading"
|
||||
android:title="@string/prefs_instant_upload"
|
||||
android:summary="@string/prefs_instant_upload_summary"/>
|
||||
|
@ -42,6 +42,9 @@
|
|||
android:disableDependentsState="true"
|
||||
android:title="@string/instant_upload_on_wifi"
|
||||
android:key="instant_upload_on_wifi"/>
|
||||
<com.owncloud.android.ui.PreferenceWithLongSummary
|
||||
android:title="@string/prefs_instant_video_upload_path_title"
|
||||
android:key="instant_video_upload_path" />
|
||||
<com.owncloud.android.ui.CheckBoxPreferenceWithLongTitle android:key="instant_video_uploading"
|
||||
android:title="@string/prefs_instant_video_upload"
|
||||
android:summary="@string/prefs_instant_video_upload_summary"/>
|
||||
|
|
|
@ -23,6 +23,7 @@ import java.util.ArrayList;
|
|||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Vector;
|
||||
|
||||
import com.owncloud.android.MainApp;
|
||||
|
@ -33,7 +34,6 @@ import com.owncloud.android.lib.resources.shares.ShareType;
|
|||
import com.owncloud.android.lib.resources.files.FileUtils;
|
||||
import com.owncloud.android.utils.FileStorageUtils;
|
||||
|
||||
|
||||
import android.accounts.Account;
|
||||
import android.content.ContentProviderClient;
|
||||
import android.content.ContentProviderOperation;
|
||||
|
@ -41,6 +41,7 @@ import android.content.ContentProviderResult;
|
|||
import android.content.ContentResolver;
|
||||
import android.content.ContentUris;
|
||||
import android.content.ContentValues;
|
||||
import android.content.Intent;
|
||||
import android.content.OperationApplicationException;
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
|
@ -346,7 +347,9 @@ public class FileDataStorageManager {
|
|||
).withSelection(where, whereArgs).build());
|
||||
|
||||
if (file.isDown()) {
|
||||
new File(file.getStoragePath()).delete();
|
||||
String path = file.getStoragePath();
|
||||
new File(path).delete();
|
||||
triggerMediaScan(path); // notify MediaScanner about removed file
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -484,8 +487,12 @@ public class FileDataStorageManager {
|
|||
}
|
||||
success &= (deleted > 0);
|
||||
}
|
||||
if (removeLocalCopy && file.isDown() && file.getStoragePath() != null && success) {
|
||||
success = new File(file.getStoragePath()).delete();
|
||||
String localPath = file.getStoragePath();
|
||||
if (removeLocalCopy && file.isDown() && localPath != null && success) {
|
||||
success = new File(localPath).delete();
|
||||
if (success) {
|
||||
triggerMediaScan(localPath);
|
||||
}
|
||||
if (!removeDBData && success) {
|
||||
// maybe unnecessary, but should be checked TODO remove if unnecessary
|
||||
file.setStoragePath(null);
|
||||
|
@ -542,11 +549,13 @@ public class FileDataStorageManager {
|
|||
success &= removeLocalFolder(file);
|
||||
} else {
|
||||
if (file.isDown()) {
|
||||
String path = file.getStoragePath();
|
||||
File localFile = new File(file.getStoragePath());
|
||||
success &= localFile.delete();
|
||||
if (success) {
|
||||
file.setStoragePath(null);
|
||||
saveFile(file);
|
||||
triggerMediaScan(path); // notify MediaScanner about removed file
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -568,7 +577,9 @@ public class FileDataStorageManager {
|
|||
if (localFile.isDirectory()) {
|
||||
success &= removeLocalFolder(localFile);
|
||||
} else {
|
||||
String path = localFile.getAbsolutePath();
|
||||
success &= localFile.delete();
|
||||
triggerMediaScan(path); // notify MediaScanner about removed file
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -576,109 +587,20 @@ public class FileDataStorageManager {
|
|||
return success;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Updates database for a folder that was moved to a different location.
|
||||
* Updates database and file system for a file or folder that was moved to a different location.
|
||||
*
|
||||
* TODO explore better (faster) implementations
|
||||
* TODO throw exceptions up !
|
||||
*/
|
||||
public void moveFolder(OCFile folder, String newPath) {
|
||||
// TODO check newPath
|
||||
|
||||
if ( folder != null && folder.isFolder() &&
|
||||
folder.fileExists() && !OCFile.ROOT_PATH.equals(folder.getFileName())
|
||||
) {
|
||||
/// 1. get all the descendants of 'dir' in a single QUERY (including 'dir')
|
||||
Cursor c = null;
|
||||
if (getContentProviderClient() != null) {
|
||||
try {
|
||||
c = getContentProviderClient().query (
|
||||
ProviderTableMeta.CONTENT_URI,
|
||||
null,
|
||||
ProviderTableMeta.FILE_ACCOUNT_OWNER + "=? AND " +
|
||||
ProviderTableMeta.FILE_PATH + " LIKE ? ",
|
||||
new String[] { mAccount.name, folder.getRemotePath() + "%" },
|
||||
ProviderTableMeta.FILE_PATH + " ASC "
|
||||
);
|
||||
} catch (RemoteException e) {
|
||||
Log_OC.e(TAG, e.getMessage());
|
||||
}
|
||||
} else {
|
||||
c = getContentResolver().query (
|
||||
ProviderTableMeta.CONTENT_URI,
|
||||
null,
|
||||
ProviderTableMeta.FILE_ACCOUNT_OWNER + "=? AND " +
|
||||
ProviderTableMeta.FILE_PATH + " LIKE ? ",
|
||||
new String[] { mAccount.name, folder.getRemotePath() + "%" },
|
||||
ProviderTableMeta.FILE_PATH + " ASC "
|
||||
);
|
||||
}
|
||||
|
||||
/// 2. prepare a batch of update operations to change all the descendants
|
||||
ArrayList<ContentProviderOperation> operations =
|
||||
new ArrayList<ContentProviderOperation>(c.getCount());
|
||||
int lengthOfOldPath = folder.getRemotePath().length();
|
||||
String defaultSavePath = FileStorageUtils.getSavePath(mAccount.name);
|
||||
int lengthOfOldStoragePath = defaultSavePath.length() + lengthOfOldPath;
|
||||
if (c.moveToFirst()) {
|
||||
do {
|
||||
ContentValues cv = new ContentValues(); // keep the constructor in the loop
|
||||
OCFile child = createFileInstance(c);
|
||||
cv.put(
|
||||
ProviderTableMeta.FILE_PATH,
|
||||
newPath + child.getRemotePath().substring(lengthOfOldPath)
|
||||
);
|
||||
if ( child.getStoragePath() != null &&
|
||||
child.getStoragePath().startsWith(defaultSavePath) ) {
|
||||
cv.put(
|
||||
ProviderTableMeta.FILE_STORAGE_PATH,
|
||||
defaultSavePath + newPath +
|
||||
child.getStoragePath().substring(lengthOfOldStoragePath)
|
||||
);
|
||||
}
|
||||
operations.add(
|
||||
ContentProviderOperation.
|
||||
newUpdate(ProviderTableMeta.CONTENT_URI).
|
||||
withValues(cv).
|
||||
withSelection(
|
||||
ProviderTableMeta._ID + "=?",
|
||||
new String[] { String.valueOf(child.getFileId()) }
|
||||
).
|
||||
build()
|
||||
);
|
||||
} while (c.moveToNext());
|
||||
}
|
||||
c.close();
|
||||
|
||||
/// 3. apply updates in batch
|
||||
try {
|
||||
if (getContentResolver() != null) {
|
||||
getContentResolver().applyBatch(MainApp.getAuthority(), operations);
|
||||
|
||||
} else {
|
||||
getContentProviderClient().applyBatch(operations);
|
||||
}
|
||||
|
||||
} catch (OperationApplicationException e) {
|
||||
Log_OC.e(TAG, "Fail to update descendants of " +
|
||||
folder.getFileId() + " in database", e);
|
||||
|
||||
} catch (RemoteException e) {
|
||||
Log_OC.e(TAG, "Fail to update desendants of " +
|
||||
folder.getFileId() + " in database", e);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void moveLocalFile(OCFile file, String targetPath, String targetParentPath) {
|
||||
|
||||
if (file != null && file.fileExists() && !OCFile.ROOT_PATH.equals(file.getFileName())) {
|
||||
|
||||
OCFile targetParent = getFileByPath(targetParentPath);
|
||||
if (targetParent == null) {
|
||||
// TODO panic
|
||||
throw new IllegalStateException("Parent folder of the target path does not exist!!");
|
||||
}
|
||||
|
||||
/// 1. get all the descendants of the moved element in a single QUERY
|
||||
|
@ -718,6 +640,8 @@ public class FileDataStorageManager {
|
|||
ArrayList<ContentProviderOperation> operations =
|
||||
new ArrayList<ContentProviderOperation>(c.getCount());
|
||||
String defaultSavePath = FileStorageUtils.getSavePath(mAccount.name);
|
||||
List<String> originalPathsToTriggerMediaScan = new ArrayList<String>();
|
||||
List<String> newPathsToTriggerMediaScan = new ArrayList<String>();
|
||||
if (c.moveToFirst()) {
|
||||
int lengthOfOldPath = file.getRemotePath().length();
|
||||
int lengthOfOldStoragePath = defaultSavePath.length() + lengthOfOldPath;
|
||||
|
@ -731,11 +655,14 @@ public class FileDataStorageManager {
|
|||
if (child.getStoragePath() != null &&
|
||||
child.getStoragePath().startsWith(defaultSavePath)) {
|
||||
// update link to downloaded content - but local move is not done here!
|
||||
cv.put(
|
||||
ProviderTableMeta.FILE_STORAGE_PATH,
|
||||
defaultSavePath + targetPath +
|
||||
child.getStoragePath().substring(lengthOfOldStoragePath)
|
||||
);
|
||||
String targetLocalPath = defaultSavePath + targetPath +
|
||||
child.getStoragePath().substring(lengthOfOldStoragePath);
|
||||
|
||||
cv.put(ProviderTableMeta.FILE_STORAGE_PATH, targetLocalPath);
|
||||
|
||||
originalPathsToTriggerMediaScan.add(child.getStoragePath());
|
||||
newPathsToTriggerMediaScan.add(targetLocalPath);
|
||||
|
||||
}
|
||||
if (child.getRemotePath().equals(file.getRemotePath())) {
|
||||
cv.put(
|
||||
|
@ -766,27 +693,35 @@ public class FileDataStorageManager {
|
|||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
Log_OC.e(
|
||||
TAG,
|
||||
"Fail to update " + file.getFileId() + " and descendants in database",
|
||||
e
|
||||
);
|
||||
Log_OC.e(TAG, "Fail to update " + file.getFileId() + " and descendants in database", e);
|
||||
}
|
||||
|
||||
/// 4. move in local file system
|
||||
String localPath = FileStorageUtils.getDefaultSavePathFor(mAccount.name, file);
|
||||
File localFile = new File(localPath);
|
||||
String originalLocalPath = FileStorageUtils.getDefaultSavePathFor(mAccount.name, file);
|
||||
String targetLocalPath = defaultSavePath + targetPath;
|
||||
File localFile = new File(originalLocalPath);
|
||||
boolean renamed = false;
|
||||
if (localFile.exists()) {
|
||||
File targetFile = new File(defaultSavePath + targetPath);
|
||||
File targetFile = new File(targetLocalPath);
|
||||
File targetFolder = targetFile.getParentFile();
|
||||
if (!targetFolder.exists()) {
|
||||
targetFolder.mkdirs();
|
||||
}
|
||||
renamed = localFile.renameTo(targetFile);
|
||||
}
|
||||
Log_OC.d(TAG, "Local file RENAMED : " + renamed);
|
||||
|
||||
if (renamed) {
|
||||
Iterator<String> it = originalPathsToTriggerMediaScan.iterator();
|
||||
while (it.hasNext()) {
|
||||
// Notify MediaScanner about removed file
|
||||
triggerMediaScan(it.next());
|
||||
}
|
||||
it = newPathsToTriggerMediaScan.iterator();
|
||||
while (it.hasNext()) {
|
||||
// Notify MediaScanner about new file/folder
|
||||
triggerMediaScan(it.next());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1549,4 +1484,10 @@ public class FileDataStorageManager {
|
|||
//}
|
||||
}
|
||||
|
||||
public void triggerMediaScan(String path) {
|
||||
Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
|
||||
intent.setData(Uri.fromFile(new File(path)));
|
||||
MainApp.getAppContext().sendBroadcast(intent);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -27,7 +27,6 @@ import com.owncloud.android.lib.common.utils.Log_OC;
|
|||
import java.io.File;
|
||||
|
||||
import third_parties.daveKoeller.AlphanumComparator;
|
||||
|
||||
public class OCFile implements Parcelable, Comparable<OCFile> {
|
||||
|
||||
public static final Parcelable.Creator<OCFile> CREATOR = new Parcelable.Creator<OCFile>() {
|
||||
|
|
|
@ -161,7 +161,7 @@ public class InstantUploadBroadcastReceiver extends BroadcastReceiver {
|
|||
Intent i = new Intent(context, FileUploader.class);
|
||||
i.putExtra(FileUploader.KEY_ACCOUNT, account);
|
||||
i.putExtra(FileUploader.KEY_LOCAL_FILE, file_path);
|
||||
i.putExtra(FileUploader.KEY_REMOTE_FILE, FileStorageUtils.getInstantUploadFilePath(context, file_name));
|
||||
i.putExtra(FileUploader.KEY_REMOTE_FILE, FileStorageUtils.getInstantVideoUploadFilePath(context, file_name));
|
||||
i.putExtra(FileUploader.KEY_UPLOAD_TYPE, FileUploader.UPLOAD_SINGLE_FILE);
|
||||
i.putExtra(FileUploader.KEY_MIME_TYPE, mime_type);
|
||||
i.putExtra(FileUploader.KEY_INSTANT_UPLOAD, true);
|
||||
|
|
|
@ -400,6 +400,7 @@ public class FileDownloader extends Service implements OnDatatransferProgressLis
|
|||
file.setFileLength((new File(mCurrentDownload.getSavePath()).length()));
|
||||
file.setRemoteId(mCurrentDownload.getFile().getRemoteId());
|
||||
mStorageManager.saveFile(file);
|
||||
mStorageManager.triggerMediaScan(file.getStoragePath());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -36,7 +36,6 @@ import com.owncloud.android.lib.resources.files.ExistenceCheckRemoteOperation;
|
|||
|
||||
import android.content.Context;
|
||||
import android.net.Uri;
|
||||
import android.util.Log;
|
||||
|
||||
/**
|
||||
* Operation to find out what authentication method requires
|
||||
|
|
|
@ -150,13 +150,11 @@ public class DownloadFileOperation extends RemoteOperation {
|
|||
newFile = new File(getSavePath());
|
||||
newFile.getParentFile().mkdirs();
|
||||
moved = tmpFile.renameTo(newFile);
|
||||
|
||||
if (!moved)
|
||||
result = new RemoteOperationResult(RemoteOperationResult.ResultCode.LOCAL_STORAGE_NOT_MOVED);
|
||||
}
|
||||
Log_OC.i(TAG, "Download of " + mFile.getRemotePath() + " to " + getSavePath() + ": " + result.getLogMessage());
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -29,8 +29,6 @@ import com.owncloud.android.lib.resources.files.RenameRemoteFileOperation;
|
|||
import com.owncloud.android.operations.common.SyncOperation;
|
||||
import com.owncloud.android.utils.FileStorageUtils;
|
||||
|
||||
import android.accounts.Account;
|
||||
|
||||
|
||||
/**
|
||||
* Remote operation performing the rename of a remote file (or folder?) in the ownCloud server.
|
||||
|
@ -44,7 +42,6 @@ public class RenameFileOperation extends SyncOperation {
|
|||
|
||||
private OCFile mFile;
|
||||
private String mRemotePath;
|
||||
private Account mAccount;
|
||||
private String mNewName;
|
||||
private String mNewRemotePath;
|
||||
|
||||
|
@ -57,9 +54,8 @@ public class RenameFileOperation extends SyncOperation {
|
|||
* @param account OwnCloud account containing the remote file
|
||||
* @param newName New name to set as the name of file.
|
||||
*/
|
||||
public RenameFileOperation(String remotePath, Account account, String newName) {
|
||||
public RenameFileOperation(String remotePath, String newName) {
|
||||
mRemotePath = remotePath;
|
||||
mAccount = account;
|
||||
mNewName = newName;
|
||||
mNewRemotePath = null;
|
||||
}
|
||||
|
@ -103,7 +99,8 @@ public class RenameFileOperation extends SyncOperation {
|
|||
|
||||
if (result.isSuccess()) {
|
||||
if (mFile.isFolder()) {
|
||||
saveLocalDirectory();
|
||||
getStorageManager().moveLocalFile(mFile, mNewRemotePath, parent);
|
||||
//saveLocalDirectory();
|
||||
|
||||
} else {
|
||||
saveLocalFile();
|
||||
|
@ -118,28 +115,24 @@ public class RenameFileOperation extends SyncOperation {
|
|||
return result;
|
||||
}
|
||||
|
||||
|
||||
private void saveLocalDirectory() {
|
||||
getStorageManager().moveFolder(mFile, mNewRemotePath);
|
||||
String localPath = FileStorageUtils.getDefaultSavePathFor(mAccount.name, mFile);
|
||||
File localDir = new File(localPath);
|
||||
if (localDir.exists()) {
|
||||
localDir.renameTo(new File(FileStorageUtils.getSavePath(mAccount.name) + mNewRemotePath));
|
||||
// TODO - if renameTo fails, children files that are already down will result unlinked
|
||||
}
|
||||
}
|
||||
|
||||
private void saveLocalFile() {
|
||||
mFile.setFileName(mNewName);
|
||||
|
||||
// try to rename the local copy of the file
|
||||
if (mFile.isDown()) {
|
||||
File f = new File(mFile.getStoragePath());
|
||||
String oldPath = mFile.getStoragePath();
|
||||
File f = new File(oldPath);
|
||||
String parentStoragePath = f.getParent();
|
||||
if (!parentStoragePath.endsWith(File.separator))
|
||||
parentStoragePath += File.separator;
|
||||
if (f.renameTo(new File(parentStoragePath + mNewName))) {
|
||||
mFile.setStoragePath(parentStoragePath + mNewName);
|
||||
String newPath = parentStoragePath + mNewName;
|
||||
mFile.setStoragePath(newPath);
|
||||
|
||||
// notify MediaScanner about removed file - TODO really works?
|
||||
getStorageManager().triggerMediaScan(oldPath);
|
||||
// notify to scan about new file
|
||||
getStorageManager().triggerMediaScan(newPath);
|
||||
}
|
||||
// else - NOTHING: the link to the local file is kept although the local name can't be updated
|
||||
// TODO - study conditions when this could be a problem
|
||||
|
|
|
@ -22,7 +22,6 @@ import java.util.ArrayList;
|
|||
import java.util.HashMap;
|
||||
|
||||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.datamodel.ThumbnailsCacheManager;
|
||||
import com.owncloud.android.db.ProviderMeta;
|
||||
import com.owncloud.android.db.ProviderMeta.ProviderTableMeta;
|
||||
import com.owncloud.android.lib.common.utils.Log_OC;
|
||||
|
|
|
@ -359,7 +359,7 @@ public class OperationsService extends Service {
|
|||
// Rename file or folder
|
||||
String remotePath = operationIntent.getStringExtra(EXTRA_REMOTE_PATH);
|
||||
String newName = operationIntent.getStringExtra(EXTRA_NEWNAME);
|
||||
operation = new RenameFileOperation(remotePath, account, newName);
|
||||
operation = new RenameFileOperation(remotePath, newName);
|
||||
|
||||
} else if (action.equals(ACTION_REMOVE)) {
|
||||
// Remove file or folder
|
||||
|
|
48
src/com/owncloud/android/ui/PreferenceWithLongSummary.java
Normal file
48
src/com/owncloud/android/ui/PreferenceWithLongSummary.java
Normal file
|
@ -0,0 +1,48 @@
|
|||
/* ownCloud Android client application
|
||||
* Copyright (C) 2014 ownCloud Inc.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2,
|
||||
* as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.owncloud.android.ui;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
import android.preference.Preference;
|
||||
|
||||
public class PreferenceWithLongSummary extends Preference{
|
||||
|
||||
public PreferenceWithLongSummary(Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public PreferenceWithLongSummary(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
public PreferenceWithLongSummary(Context context, AttributeSet attrs, int defStyle) {
|
||||
super(context, attrs, defStyle);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onBindView(View view) {
|
||||
super.onBindView(view);
|
||||
TextView titleView = (TextView) view.findViewById(android.R.id.summary);
|
||||
titleView.setSingleLine(true);
|
||||
titleView.setMaxLines(1);
|
||||
titleView.setEllipsize(TextUtils.TruncateAt.MIDDLE);
|
||||
}
|
||||
}
|
|
@ -627,8 +627,7 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener {
|
|||
} else if (requestCode == ACTION_SELECT_MULTIPLE_FILES && (resultCode == RESULT_OK || resultCode == UploadFilesActivity.RESULT_OK_AND_MOVE)) {
|
||||
requestMultipleUpload(data, resultCode);
|
||||
|
||||
} else if (requestCode == ACTION_MOVE_FILES && (resultCode == RESULT_OK ||
|
||||
resultCode == MoveActivity.RESULT_OK_AND_MOVE)){
|
||||
} else if (requestCode == ACTION_MOVE_FILES && resultCode == RESULT_OK){
|
||||
|
||||
final Intent fData = data;
|
||||
final int fResultCode = resultCode;
|
||||
|
@ -756,8 +755,8 @@ OnSslUntrustedCertListener, OnEnforceableRefreshListener {
|
|||
* @param resultCode Result code received
|
||||
*/
|
||||
private void requestMoveOperation(Intent data, int resultCode) {
|
||||
OCFile folderToMoveAt = (OCFile) data.getParcelableExtra(MoveActivity.EXTRA_CURRENT_FOLDER);
|
||||
OCFile targetFile = (OCFile) data.getParcelableExtra(MoveActivity.EXTRA_TARGET_FILE);
|
||||
OCFile folderToMoveAt = (OCFile) data.getParcelableExtra(FolderPickerActivity.EXTRA_FOLDER);
|
||||
OCFile targetFile = (OCFile) data.getParcelableExtra(FolderPickerActivity.EXTRA_FILE);
|
||||
getFileOperationsHelper().moveFile(folderToMoveAt, targetFile);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@ import android.content.Intent;
|
|||
import android.content.IntentFilter;
|
||||
import android.content.res.Resources.NotFoundException;
|
||||
import android.os.Bundle;
|
||||
import android.os.Parcelable;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.util.Log;
|
||||
|
@ -52,6 +53,7 @@ import com.owncloud.android.lib.common.accounts.AccountUtils.AccountNotFoundExce
|
|||
import com.owncloud.android.lib.common.operations.RemoteOperation;
|
||||
import com.owncloud.android.lib.common.operations.RemoteOperationResult;
|
||||
import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode;
|
||||
import com.owncloud.android.lib.common.utils.Log_OC;
|
||||
import com.owncloud.android.operations.CreateFolderOperation;
|
||||
import com.owncloud.android.operations.SynchronizeFolderOperation;
|
||||
import com.owncloud.android.syncadapter.FileSyncAdapter;
|
||||
|
@ -60,26 +62,26 @@ import com.owncloud.android.ui.fragment.FileFragment;
|
|||
import com.owncloud.android.ui.fragment.OCFileListFragment;
|
||||
import com.owncloud.android.utils.DisplayUtils;
|
||||
import com.owncloud.android.utils.ErrorMessageAdapter;
|
||||
import com.owncloud.android.lib.common.utils.Log_OC;
|
||||
|
||||
public class MoveActivity extends HookActivity implements FileFragment.ContainerActivity,
|
||||
public class FolderPickerActivity extends FileActivity implements FileFragment.ContainerActivity,
|
||||
OnClickListener, OnEnforceableRefreshListener {
|
||||
|
||||
public static final String EXTRA_CURRENT_FOLDER = UploadFilesActivity.class.getCanonicalName() + ".EXTRA_CURRENT_FOLDER";
|
||||
public static final String EXTRA_TARGET_FILE = UploadFilesActivity.class.getCanonicalName() + "EXTRA_TARGET_FILE";
|
||||
|
||||
public static final int RESULT_OK_AND_MOVE = 1;
|
||||
public static final String EXTRA_FOLDER = UploadFilesActivity.class.getCanonicalName()
|
||||
+ ".EXTRA_FOLDER";
|
||||
public static final String EXTRA_FILE = UploadFilesActivity.class.getCanonicalName()
|
||||
+ ".EXTRA_FILE";
|
||||
//TODO: Think something better
|
||||
|
||||
private SyncBroadcastReceiver mSyncBroadcastReceiver;
|
||||
|
||||
private static final String TAG = MoveActivity.class.getSimpleName();
|
||||
private static final String TAG = FolderPickerActivity.class.getSimpleName();
|
||||
|
||||
private static final String TAG_LIST_OF_FOLDERS = "LIST_OF_FOLDERS";
|
||||
|
||||
private boolean mSyncInProgress = false;
|
||||
|
||||
private Button mCancelBtn;
|
||||
private Button mChooseBtn;
|
||||
protected Button mCancelBtn;
|
||||
protected Button mChooseBtn;
|
||||
|
||||
|
||||
@Override
|
||||
|
@ -89,7 +91,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setContentView(R.layout.files_move);
|
||||
setContentView(R.layout.files_folder_picker);
|
||||
|
||||
if (savedInstanceState == null) {
|
||||
createFragments();
|
||||
|
@ -118,11 +120,6 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
getSupportActionBar().setIcon(DisplayUtils.getSeasonalIconId());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when the ownCloud {@link Account} associated to the Activity was just updated.
|
||||
*/
|
||||
|
@ -180,8 +177,8 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
}
|
||||
}
|
||||
|
||||
private OCFileListFragment getListOfFilesFragment() {
|
||||
Fragment listOfFiles = getSupportFragmentManager().findFragmentByTag(MoveActivity.TAG_LIST_OF_FOLDERS);
|
||||
protected OCFileListFragment getListOfFilesFragment() {
|
||||
Fragment listOfFiles = getSupportFragmentManager().findFragmentByTag(FolderPickerActivity.TAG_LIST_OF_FOLDERS);
|
||||
if (listOfFiles != null) {
|
||||
return (OCFileListFragment)listOfFiles;
|
||||
}
|
||||
|
@ -267,6 +264,8 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
menu.findItem(R.id.action_upload).setVisible(false);
|
||||
menu.findItem(R.id.action_settings).setVisible(false);
|
||||
menu.findItem(R.id.action_sync_account).setVisible(false);
|
||||
menu.findItem(R.id.action_logger).setVisible(false);
|
||||
menu.findItem(R.id.action_sort).setVisible(false);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -296,7 +295,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
return retval;
|
||||
}
|
||||
|
||||
private OCFile getCurrentFolder() {
|
||||
protected OCFile getCurrentFolder() {
|
||||
OCFile file = getFile();
|
||||
if (file != null) {
|
||||
if (file.isFolder()) {
|
||||
|
@ -341,7 +340,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
}
|
||||
}
|
||||
|
||||
private void updateNavigationElementsInActionBar() {
|
||||
protected void updateNavigationElementsInActionBar() {
|
||||
ActionBar actionBar = getSupportActionBar();
|
||||
OCFile currentDir = getCurrentFolder();
|
||||
boolean atRoot = (currentDir == null || currentDir.getParentId() == 0);
|
||||
|
@ -358,9 +357,9 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
* Set per-view controllers
|
||||
*/
|
||||
private void initControls(){
|
||||
mCancelBtn = (Button) findViewById(R.id.move_files_btn_cancel);
|
||||
mCancelBtn = (Button) findViewById(R.id.folder_picker_btn_cancel);
|
||||
mCancelBtn.setOnClickListener(this);
|
||||
mChooseBtn = (Button) findViewById(R.id.move_files_btn_choose);
|
||||
mChooseBtn = (Button) findViewById(R.id.folder_picker_btn_choose);
|
||||
mChooseBtn.setOnClickListener(this);
|
||||
}
|
||||
|
||||
|
@ -370,12 +369,14 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
finish();
|
||||
} else if (v == mChooseBtn) {
|
||||
Intent i = getIntent();
|
||||
OCFile targetFile = (OCFile) i.getParcelableExtra(MoveActivity.EXTRA_TARGET_FILE);
|
||||
Parcelable targetFile = i.getParcelableExtra(FolderPickerActivity.EXTRA_FILE);
|
||||
|
||||
Intent data = new Intent();
|
||||
data.putExtra(EXTRA_CURRENT_FOLDER, getCurrentFolder());
|
||||
data.putExtra(EXTRA_TARGET_FILE, targetFile);
|
||||
setResult(RESULT_OK_AND_MOVE, data);
|
||||
data.putExtra(EXTRA_FOLDER, getCurrentFolder());
|
||||
if (targetFile != null) {
|
||||
data.putExtra(EXTRA_FILE, targetFile);
|
||||
}
|
||||
setResult(RESULT_OK, data);
|
||||
finish();
|
||||
}
|
||||
}
|
||||
|
@ -409,7 +410,7 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
} else {
|
||||
dismissLoadingDialog();
|
||||
try {
|
||||
Toast msg = Toast.makeText(MoveActivity.this,
|
||||
Toast msg = Toast.makeText(FolderPickerActivity.this,
|
||||
ErrorMessageAdapter.getErrorCauseMessage(result, operation, getResources()),
|
||||
Toast.LENGTH_LONG);
|
||||
msg.show();
|
||||
|
@ -434,8 +435,10 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
Log_OC.d(TAG, "Received broadcast " + event);
|
||||
String accountName = intent.getStringExtra(FileSyncAdapter.EXTRA_ACCOUNT_NAME);
|
||||
String synchFolderRemotePath = intent.getStringExtra(FileSyncAdapter.EXTRA_FOLDER_PATH);
|
||||
RemoteOperationResult synchResult = (RemoteOperationResult)intent.getSerializableExtra(FileSyncAdapter.EXTRA_RESULT);
|
||||
boolean sameAccount = (getAccount() != null && accountName.equals(getAccount().name) && getStorageManager() != null);
|
||||
RemoteOperationResult synchResult = (RemoteOperationResult)intent.
|
||||
getSerializableExtra(FileSyncAdapter.EXTRA_RESULT);
|
||||
boolean sameAccount = (getAccount() != null &&
|
||||
accountName.equals(getAccount().name) && getStorageManager() != null);
|
||||
|
||||
if (sameAccount) {
|
||||
|
||||
|
@ -443,13 +446,17 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
mSyncInProgress = true;
|
||||
|
||||
} else {
|
||||
OCFile currentFile = (getFile() == null) ? null : getStorageManager().getFileByPath(getFile().getRemotePath());
|
||||
OCFile currentDir = (getCurrentFolder() == null) ? null : getStorageManager().getFileByPath(getCurrentFolder().getRemotePath());
|
||||
OCFile currentFile = (getFile() == null) ? null :
|
||||
getStorageManager().getFileByPath(getFile().getRemotePath());
|
||||
OCFile currentDir = (getCurrentFolder() == null) ? null :
|
||||
getStorageManager().getFileByPath(getCurrentFolder().getRemotePath());
|
||||
|
||||
if (currentDir == null) {
|
||||
// current folder was removed from the server
|
||||
Toast.makeText( MoveActivity.this,
|
||||
String.format(getString(R.string.sync_current_folder_was_removed), getCurrentFolder().getFileName()),
|
||||
Toast.makeText( FolderPickerActivity.this,
|
||||
String.format(
|
||||
getString(R.string.sync_current_folder_was_removed),
|
||||
getCurrentFolder().getFileName()),
|
||||
Toast.LENGTH_LONG)
|
||||
.show();
|
||||
browseToRoot();
|
||||
|
@ -460,7 +467,8 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
currentFile = currentDir;
|
||||
}
|
||||
|
||||
if (synchFolderRemotePath != null && currentDir.getRemotePath().equals(synchFolderRemotePath)) {
|
||||
if (synchFolderRemotePath != null && currentDir.getRemotePath().
|
||||
equals(synchFolderRemotePath)) {
|
||||
OCFileListFragment fileListFragment = getListOfFilesFragment();
|
||||
if (fileListFragment != null) {
|
||||
fileListFragment.listDirectory(currentDir);
|
||||
|
@ -469,7 +477,8 @@ public class MoveActivity extends HookActivity implements FileFragment.Container
|
|||
setFile(currentFile);
|
||||
}
|
||||
|
||||
mSyncInProgress = (!FileSyncAdapter.EVENT_FULL_SYNC_END.equals(event) && !SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED.equals(event));
|
||||
mSyncInProgress = (!FileSyncAdapter.EVENT_FULL_SYNC_END.equals(event) &&
|
||||
!SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED.equals(event));
|
||||
|
||||
if (SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_CONTENTS_SYNCED.
|
||||
equals(event) &&
|
|
@ -50,6 +50,7 @@ import com.owncloud.android.MainApp;
|
|||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.authentication.AccountUtils;
|
||||
import com.owncloud.android.authentication.AuthenticatorActivity;
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
import com.owncloud.android.db.DbHandler;
|
||||
import com.owncloud.android.lib.common.utils.Log_OC;
|
||||
import com.owncloud.android.ui.LongClickableCheckBoxPreference;
|
||||
|
@ -66,6 +67,9 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
|
||||
private static final String TAG = "OwnCloudPreferences";
|
||||
|
||||
private static final int ACTION_SELECT_UPLOAD_PATH = 1;
|
||||
private static final int ACTION_SELECT_UPLOAD_VIDEO_PATH = 2;
|
||||
|
||||
private DbHandler mDbHandler;
|
||||
private CheckBoxPreference pCode;
|
||||
private Preference pAboutApp;
|
||||
|
@ -75,6 +79,9 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
private String mAccountName;
|
||||
private boolean mShowContextMenu = false;
|
||||
private String mUploadPath;
|
||||
private Preference mPrefInstantUploadPath;
|
||||
private Preference mPrefInstantVideoUploadPath;
|
||||
private String mUploadVideoPath;
|
||||
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
|
@ -89,8 +96,6 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
actionBar.setDisplayHomeAsUpEnabled(true);
|
||||
actionBar.setTitle(R.string.actionbar_settings);
|
||||
|
||||
loadInstantUploadPath();
|
||||
|
||||
// Load the accounts category for adding the list of accounts
|
||||
mAccountsPrefCategory = (PreferenceCategory) findPreference("accounts_category");
|
||||
|
||||
|
@ -243,15 +248,39 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
}
|
||||
}
|
||||
|
||||
Preference pInstantUploadPathApp = (Preference) findPreference("instant_upload_path");
|
||||
mPrefInstantUploadPath = findPreference("instant_upload_path");
|
||||
if (mPrefInstantUploadPath != null){
|
||||
|
||||
pInstantUploadPathApp.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
|
||||
mPrefInstantUploadPath.setOnPreferenceClickListener(new OnPreferenceClickListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
mUploadPath = updateInstantUploadPath(newValue.toString());
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
if (!mUploadPath.endsWith(OCFile.PATH_SEPARATOR)) {
|
||||
mUploadPath += OCFile.PATH_SEPARATOR;
|
||||
}
|
||||
Intent intent = new Intent(Preferences.this, UploadPathActivity.class);
|
||||
intent.putExtra(UploadPathActivity.KEY_INSTANT_UPLOAD_PATH, mUploadPath);
|
||||
startActivityForResult(intent, ACTION_SELECT_UPLOAD_PATH);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
mPrefInstantVideoUploadPath = findPreference("instant_video_upload_path");
|
||||
if (mPrefInstantVideoUploadPath != null){
|
||||
|
||||
mPrefInstantVideoUploadPath.setOnPreferenceClickListener(new OnPreferenceClickListener() {
|
||||
@Override
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
if (!mUploadVideoPath.endsWith(OCFile.PATH_SEPARATOR)) {
|
||||
mUploadVideoPath += OCFile.PATH_SEPARATOR;
|
||||
}
|
||||
Intent intent = new Intent(Preferences.this, UploadPathActivity.class);
|
||||
intent.putExtra(UploadPathActivity.KEY_INSTANT_UPLOAD_PATH, mUploadVideoPath);
|
||||
startActivityForResult(intent, ACTION_SELECT_UPLOAD_VIDEO_PATH);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/* About App */
|
||||
pAboutApp = (Preference) findPreference("about_app");
|
||||
|
@ -265,11 +294,14 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
Log_OC.e(TAG, "Error while showing about dialog", e);
|
||||
}
|
||||
}
|
||||
|
||||
loadInstantUploadPath();
|
||||
loadInstantUploadVideoPath();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPause() {
|
||||
saveInstantUploadPathOnPreferences();
|
||||
super.onPause();
|
||||
}
|
||||
|
||||
|
@ -371,6 +403,33 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
|
||||
if (requestCode == ACTION_SELECT_UPLOAD_PATH && resultCode == RESULT_OK){
|
||||
|
||||
OCFile folderToUpload = (OCFile) data.getParcelableExtra(UploadPathActivity.EXTRA_FOLDER);
|
||||
|
||||
mUploadPath = folderToUpload.getRemotePath();
|
||||
|
||||
mUploadPath = DisplayUtils.getPathWithoutLastSlash(mUploadPath);
|
||||
|
||||
// Show the path on summary preference
|
||||
mPrefInstantUploadPath.setSummary(mUploadPath);
|
||||
|
||||
saveInstantUploadPathOnPreferences();
|
||||
|
||||
} else if (requestCode == ACTION_SELECT_UPLOAD_VIDEO_PATH && resultCode == RESULT_OK){
|
||||
|
||||
OCFile folderToUploadVideo = (OCFile) data.getParcelableExtra(UploadPathActivity.EXTRA_FOLDER);
|
||||
|
||||
mUploadVideoPath = folderToUploadVideo.getRemotePath();
|
||||
|
||||
mUploadVideoPath = DisplayUtils.getPathWithoutLastSlash(mUploadVideoPath);
|
||||
|
||||
// Show the video path on summary preference
|
||||
mPrefInstantVideoUploadPath.setSummary(mUploadVideoPath);
|
||||
|
||||
saveInstantUploadVideoPathOnPreferences();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -482,38 +541,13 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the upload path checking that it is a correct path
|
||||
* @param uploadPath: path write by user
|
||||
* @return String: uploadPath
|
||||
*/
|
||||
private String updateInstantUploadPath(String uploadPath) {
|
||||
String slashString = "/";
|
||||
|
||||
// If slashes are duplicated, replace them for only one slash
|
||||
uploadPath = uploadPath.replaceAll("/+", slashString);
|
||||
|
||||
// Remove last slash from path
|
||||
if (uploadPath.length() > 0 && uploadPath.charAt(uploadPath.length()-1) == slashString.charAt(0)) {
|
||||
uploadPath = uploadPath.substring(0, uploadPath.length()-1);
|
||||
}
|
||||
|
||||
if (uploadPath.isEmpty()) { // Set default instant upload path
|
||||
uploadPath = getString(R.string.instant_upload_path);
|
||||
}else {
|
||||
if (!uploadPath.startsWith(slashString)) { // Add initial slash on path if necessary
|
||||
uploadPath = slashString.concat(uploadPath);
|
||||
}
|
||||
}
|
||||
return uploadPath;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load upload path set on preferences
|
||||
*/
|
||||
private void loadInstantUploadPath() {
|
||||
SharedPreferences appPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
||||
mUploadPath = appPrefs.getString("instant_upload_path", getString(R.string.instant_upload_path));
|
||||
mPrefInstantUploadPath.setSummary(mUploadPath);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -525,4 +559,23 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
|
|||
editor.putString("instant_upload_path", mUploadPath);
|
||||
editor.commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* Load upload video path set on preferences
|
||||
*/
|
||||
private void loadInstantUploadVideoPath() {
|
||||
SharedPreferences appPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
||||
mUploadVideoPath = appPrefs.getString("instant_video_upload_path", getString(R.string.instant_upload_path));
|
||||
mPrefInstantVideoUploadPath.setSummary(mUploadVideoPath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Save the "Instant Video Upload Path" on preferences
|
||||
*/
|
||||
private void saveInstantUploadVideoPathOnPreferences() {
|
||||
SharedPreferences appPrefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
||||
SharedPreferences.Editor editor = appPrefs.edit();
|
||||
editor.putString("instant_video_upload_path", mUploadVideoPath);
|
||||
editor.commit();
|
||||
}
|
||||
}
|
||||
|
|
77
src/com/owncloud/android/ui/activity/UploadPathActivity.java
Normal file
77
src/com/owncloud/android/ui/activity/UploadPathActivity.java
Normal file
|
@ -0,0 +1,77 @@
|
|||
/* ownCloud Android client application
|
||||
* Copyright (C) 2012-2014 ownCloud Inc.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2,
|
||||
* as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.owncloud.android.ui.activity;
|
||||
|
||||
import android.accounts.Account;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.view.View.OnClickListener;
|
||||
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
import com.owncloud.android.ui.fragment.FileFragment;
|
||||
import com.owncloud.android.ui.fragment.OCFileListFragment;
|
||||
|
||||
public class UploadPathActivity extends FolderPickerActivity implements FileFragment.ContainerActivity,
|
||||
OnClickListener, OnEnforceableRefreshListener {
|
||||
|
||||
public static final String KEY_INSTANT_UPLOAD_PATH = "INSTANT_UPLOAD_PATH";
|
||||
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
String instantUploadPath = getIntent().getStringExtra(KEY_INSTANT_UPLOAD_PATH);
|
||||
|
||||
// The caller activity (Preferences) is not a FileActivity, so it has no OCFile, only a path.
|
||||
OCFile folder = new OCFile(instantUploadPath);
|
||||
|
||||
setFile(folder);
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when the ownCloud {@link Account} associated to the Activity was
|
||||
* just updated.
|
||||
*/
|
||||
@Override
|
||||
protected void onAccountSet(boolean stateWasRecovered) {
|
||||
super.onAccountSet(stateWasRecovered);
|
||||
if (getAccount() != null) {
|
||||
|
||||
updateFileFromDB();
|
||||
|
||||
OCFile folder = getFile();
|
||||
if (folder == null || !folder.isFolder()) {
|
||||
// fall back to root folder
|
||||
setFile(getStorageManager().getFileByPath(OCFile.ROOT_PATH));
|
||||
folder = getFile();
|
||||
}
|
||||
|
||||
onBrowsedDownTo(folder);
|
||||
|
||||
if (!stateWasRecovered) {
|
||||
OCFileListFragment listOfFolders = getListOfFilesFragment();
|
||||
listOfFolders.listDirectory(folder);
|
||||
|
||||
startSyncFolderOperation(folder, false);
|
||||
}
|
||||
|
||||
updateNavigationElementsInActionBar();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -47,7 +47,6 @@ import com.owncloud.android.datamodel.ThumbnailsCacheManager;
|
|||
import com.owncloud.android.datamodel.ThumbnailsCacheManager.AsyncDrawable;
|
||||
import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder;
|
||||
import com.owncloud.android.files.services.FileUploader.FileUploaderBinder;
|
||||
import com.owncloud.android.lib.common.utils.Log_OC;
|
||||
import com.owncloud.android.ui.activity.ComponentsGetter;
|
||||
import com.owncloud.android.utils.DisplayUtils;
|
||||
import com.owncloud.android.utils.FileStorageUtils;
|
||||
|
|
|
@ -26,15 +26,15 @@ package com.owncloud.android.ui.dialog;
|
|||
*/
|
||||
import java.util.Vector;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.datamodel.FileDataStorageManager;
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
import com.owncloud.android.ui.activity.ComponentsGetter;
|
||||
import com.owncloud.android.ui.dialog.ConfirmationDialogFragment.ConfirmationDialogFragmentListener;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.os.Bundle;
|
||||
|
||||
public class RemoveFileDialogFragment extends ConfirmationDialogFragment
|
||||
implements ConfirmationDialogFragmentListener {
|
||||
|
||||
|
@ -105,8 +105,7 @@ implements ConfirmationDialogFragmentListener {
|
|||
@Override
|
||||
public void onNeutral(String callerTag) {
|
||||
ComponentsGetter cg = (ComponentsGetter)getSherlockActivity();
|
||||
cg.getFileOperationsHelper()
|
||||
.removeFile(mTargetFile, true);
|
||||
cg.getFileOperationsHelper().removeFile(mTargetFile, true);
|
||||
|
||||
FileDataStorageManager storageManager = cg.getStorageManager();
|
||||
|
||||
|
|
|
@ -22,12 +22,6 @@ package com.owncloud.android.ui.dialog;
|
|||
*
|
||||
* Triggers the rename operation.
|
||||
*/
|
||||
import com.actionbarsherlock.app.SherlockDialogFragment;
|
||||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
import com.owncloud.android.lib.resources.files.FileUtils;
|
||||
import com.owncloud.android.ui.activity.ComponentsGetter;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.content.DialogInterface;
|
||||
|
@ -39,6 +33,12 @@ import android.widget.EditText;
|
|||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.actionbarsherlock.app.SherlockDialogFragment;
|
||||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
import com.owncloud.android.lib.resources.files.FileUtils;
|
||||
import com.owncloud.android.ui.activity.ComponentsGetter;
|
||||
|
||||
|
||||
/**
|
||||
* Dialog to input a new name for a file or folder to rename.
|
||||
|
@ -126,11 +126,7 @@ extends SherlockDialogFragment implements DialogInterface.OnClickListener {
|
|||
return;
|
||||
}
|
||||
|
||||
((ComponentsGetter)getSherlockActivity()).
|
||||
getFileOperationsHelper().renameFile(mTargetFile, newFileName);
|
||||
|
||||
|
||||
((ComponentsGetter)getSherlockActivity()).getFileOperationsHelper().renameFile(mTargetFile, newFileName);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ import com.owncloud.android.datamodel.OCFile;
|
|||
import com.owncloud.android.files.FileMenuFilter;
|
||||
import com.owncloud.android.lib.common.utils.Log_OC;
|
||||
import com.owncloud.android.ui.activity.FileDisplayActivity;
|
||||
import com.owncloud.android.ui.activity.MoveActivity;
|
||||
import com.owncloud.android.ui.activity.FolderPickerActivity;
|
||||
import com.owncloud.android.ui.activity.OnEnforceableRefreshListener;
|
||||
import com.owncloud.android.ui.adapter.FileListListAdapter;
|
||||
import com.owncloud.android.ui.dialog.ConfirmationDialogFragment;
|
||||
|
@ -331,10 +331,10 @@ public class OCFileListFragment extends ExtendedListFragment {
|
|||
return true;
|
||||
}
|
||||
case R.id.action_move: {
|
||||
Intent action = new Intent(getActivity(), MoveActivity.class);
|
||||
Intent action = new Intent(getActivity(), FolderPickerActivity.class);
|
||||
|
||||
// Pass mTargetFile that contains info of selected file/folder
|
||||
action.putExtra(MoveActivity.EXTRA_TARGET_FILE, mTargetFile);
|
||||
action.putExtra(FolderPickerActivity.EXTRA_FILE, mTargetFile);
|
||||
getActivity().startActivityForResult(action, FileDisplayActivity.ACTION_MOVE_FILES);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -29,11 +29,11 @@ import java.util.Set;
|
|||
import android.annotation.TargetApi;
|
||||
import android.content.Context;
|
||||
import android.os.Build;
|
||||
import android.text.format.DateFormat;
|
||||
import android.text.format.DateUtils;
|
||||
|
||||
import com.owncloud.android.MainApp;
|
||||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
|
||||
/**
|
||||
* A helper class for some string operations.
|
||||
|
@ -320,4 +320,17 @@ public class DisplayUtils {
|
|||
|
||||
return dateString.toString().split(",")[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the passed path removing the last "/" if it is not the root folder
|
||||
* @param path
|
||||
*/
|
||||
public static String getPathWithoutLastSlash(String path) {
|
||||
|
||||
// Remove last slash from path
|
||||
if (path.length() > 1 && path.charAt(path.length()-1) == OCFile.PATH_SEPARATOR.charAt(0)) {
|
||||
path = path.substring(0, path.length()-1);
|
||||
}
|
||||
return path;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -82,6 +82,20 @@ public class FileStorageUtils {
|
|||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the composed path when video is or must be stored
|
||||
* @param context
|
||||
* @param fileName: video file name
|
||||
* @return String: video file path composed
|
||||
*/
|
||||
public static String getInstantVideoUploadFilePath(Context context, String fileName) {
|
||||
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(context);
|
||||
String uploadVideoPathdef = context.getString(R.string.instant_upload_path);
|
||||
String uploadVideoPath = pref.getString("instant_video_upload_path", uploadVideoPathdef);
|
||||
String value = uploadVideoPath + OCFile.PATH_SEPARATOR + (fileName == null ? "" : fileName);
|
||||
return value;
|
||||
}
|
||||
|
||||
public static String getParentPath(String remotePath) {
|
||||
String parentPath = new File(remotePath).getParent();
|
||||
parentPath = parentPath.endsWith(OCFile.PATH_SEPARATOR) ? parentPath : parentPath + OCFile.PATH_SEPARATOR;
|
||||
|
|
Loading…
Reference in a new issue