From: AndyScherzinger Date: Sun, 26 Jul 2015 20:34:13 +0000 (+0200) Subject: Merge branch 'master' of https://github.com/owncloud/android into develop X-Git-Tag: oc-android-1.8~57 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/fcf4f1238da1b084aafdb88753eed511b948b54b?hp=c9c0684cbce3c1be6cf61f226edd3bf53e04429f Merge branch 'master' of https://github.com/owncloud/android into develop --- diff --git a/res/layout/file_details_fragment.xml b/res/layout/file_details_fragment.xml index 93983c2f..f5faa47b 100644 --- a/res/layout/file_details_fragment.xml +++ b/res/layout/file_details_fragment.xml @@ -160,16 +160,16 @@ > + android:text="@string/favorite" /> + + diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml index 1ad8e9cc..b05bc336 100644 --- a/res/values-ar/strings.xml +++ b/res/values-ar/strings.xml @@ -55,11 +55,6 @@ يتم الرفع منذ ثواني لا يوجد شيء هنا. إرفع بعض الملفات! - جاري التحميل ... - مجلد - مجلدات - ملف - ملفات اضغظ على الملف ليتم عرض خيارات أكثر الحجم : النوع : @@ -168,7 +163,7 @@ الخادم الخاص بك لم يعد الإتصال بهويتك الصحيحة, الرجاء الإتصال بالمسؤول لا يمكن المصادقة من الخادم - جعل الملف محدثا + المفضلة إعادة التسمية حذف هل تريد حقاً حذف %1$s ؟ diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml index 3ae6219d..f309a7d0 100644 --- a/res/values-az/strings.xml +++ b/res/values-az/strings.xml @@ -64,12 +64,7 @@ Yüklənmə gedir saniyələr öncə Burda heçnə yoxdur. Nese yükləyin! - Yüklənir... Bu qovluqda heç bir fayl movcud deyil. - qovluq - qovluqlar - fayl - fayllar Faylın üstünə sıxın ki, əlavə məlumat ekrana çıxsın. Həcm: Tip: @@ -185,7 +180,7 @@ Aşağıda göstərilən %5$s-də olan daxili və xarici fayl(lar) link edilmiş Sizin server düzgün istifadəçi id-si qaytarmır, xahiş olunur inzibatçı ilə əlaqə saxlayasınız Bu serverdə yenidən qeydiyyatdan keçmək olmur Hesab göstərilən avadanlıqda mövcud deyil - Faylı gündəmdə saxla + İstəkli Adı dəyiş Sil Siz həqiqətən %1$s silmək istəyirsiniz? diff --git a/res/values-bg-rBG/strings.xml b/res/values-bg-rBG/strings.xml index a57b84a4..2345520c 100644 --- a/res/values-bg-rBG/strings.xml +++ b/res/values-bg-rBG/strings.xml @@ -2,7 +2,7 @@ %1$s Android приложение версия %1$s - Обновяване на профила + Обновяви профила Качване Съдържание от други приложения Файлове @@ -21,12 +21,17 @@ Biggest - Smallest--> + Всички файлове + Настройки + Логове + Затвори Общи Още Профили Управление на профилите + Заключваща парола Незабавно качване на снимки Незабвано качване на снимки направени с камерата Незабавно качване на видео @@ -64,12 +69,8 @@ Качване преди секунди Тук няма нищо. Качете нещо! - Зареждане... + Зарежда… Няма файлове в тази папка. - папка - папки - файл - файл Натисни върху файл, за да видиш допълнителна информация. Размер: Тип: @@ -78,6 +79,7 @@ Изтегляне Обновяване на файла Файлът беше преименуван на %1$s по време на качването. + Списък с изгледи Връзка за споделяне Премахване връзка за споделяне Да @@ -130,6 +132,15 @@ Локален: %1$s Отдалечен: %1$s Няма достатъчно място за копирането на избраните файлове до папка %1$s. Да се преместят ли вместо това? + Моля, въведи парола за достъп + Въведи парола за достъп + Паролата ще се изисква при всяко стартиране на приложението + Моля, въведи парола за достъп отново + Премахни парола + Паролите не съвпадат + Грешна парола + Паролата премахната + Паролата е запаметена %1$s музикален плеър %1$s (пусната) %1$s (се зарежда) @@ -181,7 +192,8 @@ Вашият сървър не връща правилен потребителски индентификатор. Моля, свържете се с администратора. Неуспешен опит за оторизиране с този сървър. - Поддържане на файла обновен. + Профила не съществува на устройството все още + Любими Преименуване Премахване Наистина ли искате да изтриете %1$s ? @@ -199,11 +211,13 @@ Съдържанието на файла е вече синхронизирано Папката не може да бъде създадена Забранени символи: / \\ < > : \" | ? * + Името на файла съдържа поне един невалиден символ Името на файла не може да бъде празно Изчакайте малко Неочакван проблем; моля, изберете файла от друга програма. Не е избран файл Изпращане на връзката до... + Копира файла от личното хранилище Вписване с oAuth2 Свързване с оАутх2 сървър... Самоличността на сайта не може да бъде проверена. @@ -295,6 +309,19 @@ Сигурност Качване на видео път Свалянето на директорията %1$s не може да бъде завършено + споделен + с теб + %1$s споделен \"%2$s\" с теб Обнови връзката Адрес на сървъра + Няма достатъчно памет + Потребителско име + 1 папка + %1$d папки + 1 файл + 1 файл, 1 папка + 1 файл, %1$d папки + %1$d файла + %1$d файла, 1 папка + %1$d файла, %2$d папки diff --git a/res/values-bn-rBD/strings.xml b/res/values-bn-rBD/strings.xml index 643ba6b3..4a2c9458 100644 --- a/res/values-bn-rBD/strings.xml +++ b/res/values-bn-rBD/strings.xml @@ -55,7 +55,6 @@ আপলোড করা হচ্ছে সেকেন্ড পূর্বে এখানে কিছুই নেই। কিছু আপলোড করুন ! - লোড হচ্ছে.... এই ফোলডারে কোন ফাইল নেই অতিরিক্ত তথ্য প্রদর্শন করতে চাইলে ফাইলে ট্যাপ দিন আয়তনঃ @@ -166,7 +165,7 @@ আপনার সার্ভার একটি সঠিক ব্যবহারকারী আইডি দেয়না। দয়া করে প্রশাসকের সংগে যোগাযোগ করুন ⇥ এই সার্ভারের বিপরীতে অনুমোদন প্রদান করা গেলনা - ফাইল নবায়ন করে রাখুন + প্রিয়জন পূনঃনামকরণ অপসারণ আপনি কি সত্যিই %1$s অপসারণ করতে চান? diff --git a/res/values-bn-rIN/strings.xml b/res/values-bn-rIN/strings.xml index 9e2c90c8..d71af21a 100644 --- a/res/values-bn-rIN/strings.xml +++ b/res/values-bn-rIN/strings.xml @@ -15,7 +15,6 @@ ইউজারনেম ফাইলস নতুন ফোল্ডার - লোড করা হচ্ছে... ডাউনলোড করুন বাতিল করা ভুল diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml index b3bc7a18..70c12904 100644 --- a/res/values-bs/strings.xml +++ b/res/values-bs/strings.xml @@ -29,6 +29,7 @@ Nepoznata greška Promijeni lozinku Kreiraj račun + Favorit Preimenuj Pošalji diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml index 36f28460..8bb9716f 100644 --- a/res/values-ca/strings.xml +++ b/res/values-ca/strings.xml @@ -62,12 +62,7 @@ S\'està pujant segons enrere Res per aquí. Pugeu alguna cosa! - Carregant... No hi ha arxius a aquesta carpeta - carpeta - carpetes - fitxer - fitxers Feu clic en un fitxer per mostrar informació addicional. Mida: Tipus: @@ -176,7 +171,7 @@ %1$s no permet comptes múltiples El servidor no retorna una id d\'usuari correcta, contacteu amb l\'administrador. No es pot autenticar en aquest servidor - Mantén el fitxer actualitzat + Preferits Reanomena Elimina Esteu segur que voleu eliminar %1$s? diff --git a/res/values-cs-rCZ/strings.xml b/res/values-cs-rCZ/strings.xml index 5de9318e..cbf7c380 100644 --- a/res/values-cs-rCZ/strings.xml +++ b/res/values-cs-rCZ/strings.xml @@ -69,12 +69,8 @@ Odesílání před pár sekundami Žádný obsah. Nahrajte něco! - Načítám... + Načítání... V tomto adresáři nejsou žádné soubory. - adresář - adresáře - soubor - soubory Více informací získáte klepnutím na soubor. Velikost: Typ: @@ -83,6 +79,7 @@ Stáhnout Obnovit soubor Soubor byl v průběhu odesílání přejmenován na %1$s + Náhled seznamu Sdílet odkaz Zrušit sdílení odkazu Ano @@ -195,7 +192,8 @@ Váš server nevrací správné přihlašovací ID, kontaktujte prosím svého správce systému Není možné provést ověření V zařízení není zatím nastaven účet - Udržovat soubor aktuální + Oblíbené + Odebrat z oblíbených Přejmenovat Odstranit Opravdu chcete odstranit %1$s ? @@ -213,6 +211,7 @@ Obsah souboru je již synchronizován Adresář nemohl být vytvořen Zakázané znaky: / \\ < > : \" | ? * + Jméno souboru obsahuje aelspoň jeden neplatný znak Název nemůže být prázdný Počkejte chvíli Neočekávaný problém - zkuste zvolit soubor jinou aplikací @@ -310,7 +309,19 @@ správce systému. Zabezpečení Cesta pro nahrávání videí Stažení adresáře %1$s nemohlo být dokončeno + sdílené + s vámi + %1$s s vámi sdílí \"%2$s\" Obnovit připojení Adresa serveru Nedostatek paměti + Uživatelské jméno + 1 adresář + %1$d adresáře(ů) + 1 soubor + 1 soubor, 1 adresář + 1 soubor, %1$d adresáře(ů) + %1$d soubory(ů) + %1$d soubory(ů), 1 adresář + %1$d soubory(ů), %2$d adresáře(ů) diff --git a/res/values-cy-rGB/strings.xml b/res/values-cy-rGB/strings.xml index 08b31ad2..46406023 100644 --- a/res/values-cy-rGB/strings.xml +++ b/res/values-cy-rGB/strings.xml @@ -88,7 +88,6 @@ Fersiwn gweinydd heb ei gydnabod Methwyd creu cysylltiad Sefydlwyd cysylltiad diogel - Cadw\'r ffeil yn gyfredol Ailenwi Gwaredu Lleol yn unig diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml index a659491e..2bbf37b0 100644 --- a/res/values-da/strings.xml +++ b/res/values-da/strings.xml @@ -71,10 +71,6 @@ Her er tomt. Upload noget! Indlæser... Der er ingen filer i denne mappe. - mappe - mapper - fil - filer Tryk på en fil for at vise yderligere information. Størelse: Type: @@ -196,7 +192,8 @@ Din server retunere ikke et korrekt bruger-id. Kontakt venligst din administrator Kan ikke autentificere mod denne server Kontoen findes endnu ikke på enheden - Hold filen opdateret + Foretrukken + Fjern markering som foretrukket Omdøb Fjern Er du sikker på at du vil fjerne %1$s ? @@ -214,6 +211,7 @@ Filindholdet allerede synkroniseret Kunne ikke oprette mappe Ugyldige tegn: / \\ < > : \" | ? * + Filnavnet indeholder mindst ét ugyldigt tegn Filnavnet kan ikke stå tomt. Vent et øjeblik Uventet problem; prøv venligst en anden applikation til at vælge filen @@ -313,8 +311,17 @@ Download af %1$s mappe kunne ikke fuldføres delt med dig + %1$s delte \"%2$s\" med dig Genopfrisk forbindelsen Serveradresse Ikke tilstrækkelig hukommelse Brugernavn + 1 mappe + %1$d mapper + 1 fil + 1 fil, 1 mappe + 1 fil, %1$d mapper + %1$d filer + %1$d filer, 1 mape + %1$d filer, %2$d mapper diff --git a/res/values-de-rAT/strings.xml b/res/values-de-rAT/strings.xml index 7f83c6e4..a99ab891 100644 --- a/res/values-de-rAT/strings.xml +++ b/res/values-de-rAT/strings.xml @@ -52,12 +52,7 @@ Lade hoch Sekunden zuvor Es ist nichts hier. Lade etwas hoch! - Lade... Es sind keine Dateien in diesem Ordner. - Ordner - Ordner - Datei - Dateien Auf eine Datei drücken, um mehr Informationen zu erhalten. Größe: Typ: diff --git a/res/values-de-rDE/strings.xml b/res/values-de-rDE/strings.xml index 9674d481..f22872ea 100644 --- a/res/values-de-rDE/strings.xml +++ b/res/values-de-rDE/strings.xml @@ -21,8 +21,12 @@ Biggest - Smallest--> + Alle Dateien + Einstellungen + Protokolle + Schließen Allgemein Mehr Konten @@ -65,12 +69,8 @@ Lade hoch Gerade eben Alles leer. Laden Sie etwas hoch! - Ladevorgang … + Lade… Es befinden sich keine Dateien in diesem Ordner. - Ordner - Ordner - Datei - Dateien Klicken Sie auf eine Datei für weitere Informationen. Größe: Art: @@ -79,6 +79,7 @@ Herunterladen Datei aktualisieren Datei wurde wärend des Uploads zu %1$s umbenannt + Listen-Layout Link teilen Link nicht mehr teilen Ja @@ -192,7 +193,8 @@ ⇥ Die Legitimierung gegenüber dem Server konnte nicht durchgeführt werden Das Benutzerkonto ist bis jetzt noch nicht auf dem Gerät vorhanden - Datei aktuell halten + Favorit + Nicht mehr favorisieren Umbenennen Löschen Möchten Sie %1$s wirklich löschen? @@ -210,6 +212,7 @@ Dateiinhalte bereits synchronisiert Ordner konnte nicht erstellt werden Verbotene Zeichen: / \\ < > : \" | ? * + Der Dateiname enthält mindestens ein ungültiges Zeichen Dateiname darf nicht leer sein Bitte warten Sie einen Moment. Ein unerwartetes Problem ist aufgetreten. Bitte versuchen Sie, die Datei in einer anderen App zu öffnen. @@ -307,7 +310,19 @@ Sicherheit Verzeichnis zum Hochladen der Videos Herunterladen des %1$s - Ordners konnte nicht abgeschlossen werden + geteilt + Mit Ihnen + %1$s hat \"%2$s\" mit Ihnen geteilt Verbindung aktualisieren Serveradresse Nicht genügend Speicher + Benutzername + 1 Ordner + %1$d Ordner + 1 Datei + 1 Datei, 1 Ordner + 1 Datei, %1$d Ordner + %1$d Dateien + %1$d Dateien, 1 Ordner + %1$d Dateien, %2$d Ordner diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index b230acee..c9defa97 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -21,9 +21,12 @@ Biggest - Smallest--> + Alle Dateien Einstellungen + Protokolle + Schließen Allgemein Mehr Konten @@ -66,12 +69,8 @@ Lade hoch Gerade eben Alles leer. Lade etwas hoch! - Laden… + Lade… Es befinden sich keine Dateien in diesem Ordner. - Ordner - Ordner - Datei - Dateien Klicken Sie auf eine Datei für weitere Informationen. Größe: Art: @@ -80,6 +79,7 @@ Herunterladen Datei aktualisieren Datei wurde wärend des Uploads zu %1$s umbenannt + Listen-Layout Link teilen Link nicht mehr freigeben Ja @@ -193,7 +193,8 @@ Die Authentifizierung gegenüber dem Server konnte nicht durchgeführt werden Das Benutzerkonto ist bis jetzt noch nicht auf dem Gerät vorhanden - Datei aktuell halten + Favorisieren + Favorit entfernen Umbenennen Löschen Möchtest Du %1$s wirklich löschen? @@ -211,6 +212,7 @@ Dateiinhalte bereits synchronisiert Verzeichnis konnte nicht erstellt werden Verbotene Zeichen: / \\ < > : \" | ? * + Der Dateiname enthält mindestens ein ungültiges Zeichen Dateiname darf nicht leer sein Bitte warte einen Moment. Ein unerwartetes Problem ist aufgetreten. Bitte versuche, die Datei in einer anderen App zu öffnen @@ -308,7 +310,19 @@ Sicherheit Verzeichnis zum Hochladen der Videos Herunterladen des %1$s - Ordners konnte nicht abgeschlossen werden + geteilt + Mit Dir + %1$s hat \"%2$s\" mit Dir geteilt Verbindung aktualisieren Serveradresse Nicht genügend Speicher + Benutzername + 1 Ordner + %1$d Ordner + 1 Datei + 1 Datei, 1 Ordner + 1 Datei, %1$d Ordner + %1$d Dateien + %1$d Dateien, 1 Ordner + %1$d Dateien, %2$d Ordner diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml index 1da5dd6f..3888bf41 100644 --- a/res/values-el/strings.xml +++ b/res/values-el/strings.xml @@ -71,10 +71,6 @@ Δεν υπάρχει τίποτα εδώ. Μεταφορτώστε κάτι! Φόρτωση... Δεν υπάρχουν αρχεία σε αυτό τον φάκελο. - φάκελος - φάκελοι - αρχείο - αρχεία Αγγίξτε κάποιο αρχείο για να προβάλετε περισσότερες πληροφορίες. Μέγεθος: Τύπος: @@ -197,7 +193,8 @@ ⇥ Δεν είναι δυνατή η πιστοποίηση με αυτόν το διακομιστή Ο λογαριασμός δεν υπάρχει στη συσκευή ακόμα. - Διατήρηση αρχείου σε ενημέρωση + Αγαπημένο + Κατάργηση από τα αγαπημένα Μετονομασία Αφαίρεση Θέλετε στ\' αλήθεια να αφαιρέσετε το %1$s; @@ -320,4 +317,12 @@ Διεύθυνση διακομιστή Δεν υπάρχει αρκετή μνήμη Όνομα χρήστη + 1 φάκελος + %1$d φάκελοι + 1 αρχείο + 1 αρχείο, 1 φάκελος + 1 αρχείο, %1$d φάκελοι + %1$d αρχεία + %1$d αρχεία, 1 φάκελος + %1$d αρχεία, %2$d φάκελοι diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml index aecbcbe1..3227e4ac 100644 --- a/res/values-en-rGB/strings.xml +++ b/res/values-en-rGB/strings.xml @@ -65,12 +65,7 @@ Uploading seconds ago Nothing in here. Upload something! - Loading... There are no files in this folder. - folder - folders - file - files Tap on a file to display additional information. Size: Type: @@ -192,7 +187,8 @@ Cannot authenticate against this server Account does not exist in the device yet - Keep file up to date + Favourite + Unfavourite Rename Remove Do you really want to remove %1$s? diff --git a/res/values-eo/strings.xml b/res/values-eo/strings.xml index df6d6281..44511d59 100644 --- a/res/values-eo/strings.xml +++ b/res/values-eo/strings.xml @@ -41,11 +41,6 @@ Alŝutante sekundoj antaŭe Nenio estas ĉi tie. Alŝutu ion! - Ŝargante... - dosierujo - dosierujoj - dosiero - dosieroj Grando: Tipo: Kreita je: @@ -122,7 +117,8 @@ Bonvolu enigi la nunan pasvorton Konektante al aŭtentiga servilo... La servilo ne kongruas kun ĉi tiu aŭtentiga metodo - Teni dosieron ĝisdatigita + Favorato + Nefavoratigi Alinomigi Forigi Ĉu vi vere volas forigi %1$s? diff --git a/res/values-es-rAR/strings.xml b/res/values-es-rAR/strings.xml index 94eb4511..b8dbcb26 100644 --- a/res/values-es-rAR/strings.xml +++ b/res/values-es-rAR/strings.xml @@ -64,12 +64,7 @@ Subiendo segundos atrás No hay nada. ¡Subí contenido! - Cargando... No existen archivos en esta carpeta. - carpeta - carpetas - archivo - archivos Pulsá sobre un archivo para mostrar información adicional. Tamaño: Tipo: @@ -178,7 +173,7 @@ %1$s no soporta múltiples cuentas Tú servidor no esta regresando una identificación de usuario correcta, por favor contacta a un administrador No se puede autenticar contra este servidor - Mantener el archivo actualizado + Favorito Renombrar Borrar ¿Realmente quieres eliminar %1$s? diff --git a/res/values-es-rCL/strings.xml b/res/values-es-rCL/strings.xml index 6417313c..f80e9728 100644 --- a/res/values-es-rCL/strings.xml +++ b/res/values-es-rCL/strings.xml @@ -111,7 +111,6 @@ No se pudo establecer la conexión Conexión segura establecida usuario o clave incorrecta - Mantener el archivo actualizado Renombrar Remover ¿Realmente desea eliminar %1$s? diff --git a/res/values-es-rMX/strings.xml b/res/values-es-rMX/strings.xml index d64bf3e3..6ee60a6f 100644 --- a/res/values-es-rMX/strings.xml +++ b/res/values-es-rMX/strings.xml @@ -149,7 +149,7 @@ Conectando al servidor de autenticación... El servidor no soporta este método de autenticación %1$s no soporta cuentas múltiples - Mantener el archivo actualizado + Favorito Renombrar Borrar Sólo local diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index e73ed695..1e361c3b 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -71,10 +71,6 @@ No hay nada aquí. ¡Suba algo! Cargando... No hay archivos en esta carpeta. - carpeta - carpetas - archivo - archivos Pulsa sobre un archivo para mostrar información adicional. Tamaño: Tipo: @@ -197,7 +193,8 @@ No puede autenticarse en este servidor. Aún no existe la cuenta en el dispositivo - Mantener el archivo actualizado + Favorito + No-favorito Renombrar Borrar ¿Realmente desea eliminar %1$s? @@ -305,7 +302,7 @@ Aquí no hay nada. ¡Puede agregar una carpeta! Elegir No se puede mover. Revise si el archivo existe - No se puede mover una carpeta dentro de una de SUS subcarpetas. + No se puede mover una carpeta dentro de una de sus subcarpetas. El archivo ya existe en la carpeta de destino Hubo un error al tratar de mover este archivo o carpeta para mover este archivo @@ -320,4 +317,12 @@ Dirección del servidor No hay suficiente memoria Nombre de usuario + 1 carpeta + %1$d carpetas + 1 archivo + 1 archivo, 1 carpeta + 1 archivo %1$d carpetas + %1$d archivos + %1$d archivos, 1 carpeta + %1$d archivos, %2$d carpetas diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml index a8857bb7..0659c4cb 100644 --- a/res/values-et-rEE/strings.xml +++ b/res/values-et-rEE/strings.xml @@ -21,12 +21,17 @@ Biggest - Smallest--> + Kõik failid + Seaded + Logid + Sulge Üldine Rohkem Kontod Halda kontosid + Parooli lukk Piltide kohene üleslaadimine Laadi koheselt üles kaameraga tehtud pildid Videote kohene üleslaadimine @@ -64,12 +69,7 @@ Üleslaadimine sekundit tagasi Siin pole midagi. Lae midagi üles! - Laen ... Kaustas pole faile. - kaust - kausta - fail - faili Lisainfo vaatamiseks vajuta failile. Suurus: Tüüp: @@ -78,6 +78,7 @@ Lae alla Värskenda faili Fail nimetati üleslaadimise käigus ümber %1$ + Nimekirja paigutus Jaga linki Tühista lingi jagamine Jah @@ -134,6 +135,15 @@ Allpool on loend kohalikest failidest ning serveris asuvatest failidest %5$s, mi Kohalik: %1$s Serveris: %1$s Pole piisavalt ruumi kopeerimaks valitud faile kataloogi %1$s. Kas soovid kopeerimise asemel neid ümber tõsta? + Palun sisestaoma parool + Sisesta oma parool + Parooli küsitakse iga kord, kui sa selle rakenduse käivitad + Palun sisesta oma parool uuesti + Eemalda oma parool + Paroolid pole samad + Vale parool + Parool on eemaldatud + Parool on salvestatud %1$s muusika mängija %1$s (mängib) %1$s (laeb) @@ -186,7 +196,8 @@ Allpool on loend kohalikest failidest ning serveris asuvatest failidest %5$s, mi ⇥ Ei suuda autoriseerida selle serveriga. Kontot pole veel seadmes - Hoia faili ajakohasena + Lemmik + Eemalda lemmik Nimeta ümber Eemalda Oled sa kindel, et soovid %1$s eemaldada? @@ -204,11 +215,13 @@ Allpool on loend kohalikest failidest ning serveris asuvatest failidest %5$s, mi Faili sisu on juba sünkroniseeritud Kataloogi ei saa tekitada Keelatud sümbolid: / \\ < > : \" | ? * + Faili nimesonvähemalt üks keelatud märk Faili nime lahter ei saa olla tühi Oota hetk Ootamatu tõrge ; palun kasuta faili valimiseks mõnda teist rakendust Ühtegi faili pole valitud Saada link + Faili kopeerimine privaatsest salvestusalast Logi sisse oAuth2-ga oAuth2 serveriga ühendumine... Saidi identiteeti ei suudetud kinnitada @@ -300,6 +313,11 @@ Allpool on loend kohalikest failidest ning serveris asuvatest failidest %5$s, mi Turvalisus Video üleslaadimise asukoht Kausta %1$s allalaadimine ei õnnestunud + jagatud + sinuga + %1$s jagas sinuga \"%2$s\" Värskenda ühendust Serveri aadress + Mälu pole piisavalt + Kasutajanimi diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml index 23dcc3fd..2f363ce0 100644 --- a/res/values-eu/strings.xml +++ b/res/values-eu/strings.xml @@ -62,12 +62,7 @@ Igotzen segundu Ez dago ezer. Igo zerbait! - Kargatzen... Ez dago fitxategirik karpeta honetan. - karpeta - Karpetak - fitxategia - fitxategiak Sakatu fitxategi baten gainean informazio gehiago lortzeko Tamaina: Mota: @@ -178,7 +173,7 @@ Mesedez, baimendu berriz %1$s ez du kontu anitzak onartzen Zure zerbitzariak ez du bueltatzen erabiltzailearen id egokia, mesedez jarri harremanetan administratzailearekin. Ezin da autentikatu zerbitzarian. - Mantendu fitxategia eguneratuta + Gogokoa Berrizendatu Ezabatu Ziur zaude %1$s ezabatu nahi duzula? diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml index df09cdda..79e2fdae 100644 --- a/res/values-fa/strings.xml +++ b/res/values-fa/strings.xml @@ -51,12 +51,7 @@ در حال بارگزاری ثانیه‌ها پیش اینجا هیچ چیز نیست. - درحال بارگذاری... هیچ فایلی در این پوشه نیست. - پوشه - پوشه ها - پرونده - پرونده ها روی هر فایل کلیک کنید تا اطلاعات اضافی نمایش داده شود. اندازه نوع: @@ -156,7 +151,6 @@ اتصال به سرور احراز هویت... سرور این نوع احراز هویت را پشتیبانی نمی‌کند %1$s چند اکانته بودن را پشتیبانی نمی‌کند - فایل را به روز نگه دار تغییرنام حذف فقط محلی diff --git a/res/values-fi-rFI/strings.xml b/res/values-fi-rFI/strings.xml index cae7a432..1a723721 100644 --- a/res/values-fi-rFI/strings.xml +++ b/res/values-fi-rFI/strings.xml @@ -69,12 +69,8 @@ Lähetetään sekuntia sitten Täällä ei ole mitään. Lähetä tänne jotakin! - Ladataan... + Ladataan… Tässä kansiossa ei ole tiedostoja - kansio - kansiota - tiedosto - tiedostoa Napauta tiedostoa nähdäksesi lisätietoja. Koko: Tyyppi: @@ -188,7 +184,8 @@ %1$s ei tue useita tilejä Tunnistautuminen palvelinta vastaan ei onnistu Tiliä ei ole olemassa vielä laitteella - Pidä tiedosto ajan tasalla + Suosikit + Poista suosikeista Nimeä uudelleen Poista Haluatko varmasti poistaa kohteen %1$s? @@ -301,4 +298,12 @@ Palvelimen osoite Muistia ei ole riittävästi Käyttäjätunnus + 1 kansio + %1$d kansiota + 1 tiedosto + 1 tiedosto, 1 kansio + 1 tiedosto, %1$d kansiota + %1$d tiedostoa + %1$d tiedostoa, 1 kansio + %1$d tiedostoa, %2$d kansiota diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index 3079a1f6..f5034317 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -70,13 +70,9 @@ Téléchargez-le ici : %2$s Téléversement... il y a quelques secondes Il n\'y a rien ici ! Envoyez donc quelque chose :) - Chargement… + Chargement... Aucun fichier n\'est présent dans ce dossier. - dossier - dossiers - fichier - fichiers - Effleurez un fichier pour afficher les informations complémentaires. + Touchez un fichier pour afficher les informations complémentaires. Taille : Type : Créé le : @@ -202,7 +198,8 @@ Ci-dessous la liste des fichiers locaux, et les fichiers distants dans %5$s auxq Impossible de s\'authentifier sur ce serveur Le compte n\'existe pas encore sur ce périphérique - Maintenir le fichier à jour + Ajouter aux favoris + Supprimer des favoris Renommer Supprimer Voulez-vous vraiment supprimer %1$s ? @@ -316,12 +313,20 @@ Ci-dessous la liste des fichiers locaux, et les fichiers distants dans %5$s auxq Téléversement immédiat Sécurité Répertoire de téléversement des vidéos - Le téléchargement de %1$s dossier(s) n\'a pas pu être achevé - partagé + Le téléchargement du dossier %1$s n\'a pas pu être achevé + a partagé avec vous %1$s a partagé \"%2$s\" avec vous Actualiser la connexion Adresse du serveur Mémoire insuffisante Nom d\'utilisateur + 1 dossier + %1$d dossiers + 1 fichier + 1 fichier, 1 dossier + 1 fichier, %1$d dossiers + %1$d fichiers + %1$d fichiers, 1 dossier + %1$d fichiers, %2$d dossiers diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml index 9b65a536..4e2e97bf 100644 --- a/res/values-gl/strings.xml +++ b/res/values-gl/strings.xml @@ -72,10 +72,6 @@ Descárgueo de aquí: %2$s Aquí non hai nada. Envíe algo! Cargando... Non hai ficheiros neste cartafol. - cartafol - cartafoles - ficheiro - ficheiros Prema nun ficheiro para que amose a información adicional. Tamaño: Tipo: @@ -198,7 +194,8 @@ Descárgueo de aquí: %2$s Non pode autenticarse neste servidor Aínda non existe a conta no dispositivo - Manter actualizado o ficheiro + Favorito + Retirar de favoritos Renomear Retirar Confirma que quere retirar %1$s? @@ -321,4 +318,12 @@ Descárgueo de aquí: %2$s Enderezo do servidor Non hai memoria abondo Nome de usuario + 1 cartafol + %1$d cartafoles + 1 ficheiro + 1 ficheiro, 1 cartafol + 1 ficheiro, %1$d cartafoles + %1$d ficheiros + %1$d ficheiros, 1 cartafol + %1$d ficheiros, %2$d cartafoles diff --git a/res/values-he/strings.xml b/res/values-he/strings.xml index 29694b95..7dda3d9e 100644 --- a/res/values-he/strings.xml +++ b/res/values-he/strings.xml @@ -55,12 +55,7 @@ בהעלאה שניות אין כאן שום דבר. אולי ברצונך להעלות משהו? - בטעינה... אין קבצים בתיקייה זו: - תקיה - תקיות - קובץ - קבצים יש לגעת בקובץ כדי להציג פרטים נוספים. גודל: סוג: @@ -171,7 +166,7 @@ השרת אינו מחזיר מספר משתמש נכון, יש ליצור קשר עם מנהל ⇥ לא מצליח לאמת מול השרת - לשמור על קובץ עדכני + מועדף שינוי שם הסרה האם באמת להסיר %1$s? diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml index 76986685..1ada651c 100644 --- a/res/values-hr/strings.xml +++ b/res/values-hr/strings.xml @@ -41,10 +41,6 @@ Izlaz prije par sekundi Nema ničega u ovoj mapi. Pošalji nešto! - mapa - mape - datoteka - datoteke Preuzimanje Podijelite vezu Da @@ -57,6 +53,7 @@ Izmjena lozinke Naziv mape Trying to login… + Favorit Promjeni ime Makni Detalji diff --git a/res/values-hu-rHU/strings.xml b/res/values-hu-rHU/strings.xml index 62ffad32..5be77c20 100644 --- a/res/values-hu-rHU/strings.xml +++ b/res/values-hu-rHU/strings.xml @@ -55,12 +55,7 @@ Feltöltés pár másodperce Itt nincs semmi. Töltsön fel valamit! - Betöltés... Nincs fájl ebben a mappában. - mappa - mappák - fájl - fájlok Érintsen meg egy fájlt a további információkért. Méret: Tipus: @@ -166,7 +161,8 @@ A kiszolgáló nem támogatja ezt a felhasználóazonosítási módszert %1$s nem támogat több bejelenkezési jogosultságot Nem tudod hitelesíteni magadat ezen a szerveren - Automatikusan frissítse a fájlokat + Kedvenc + Nem kedvenc Átnevezés Eltávolítás Tényleg el akarod távolítani %1$s? diff --git a/res/values-ia/strings.xml b/res/values-ia/strings.xml index 00933787..d1cc465d 100644 --- a/res/values-ia/strings.xml +++ b/res/values-ia/strings.xml @@ -25,7 +25,6 @@ Nulle contos trovate secundas passate Nihil hic. Incarga alcun cosa! - dossier Dimension: Typo: Discargar diff --git a/res/values-id/strings.xml b/res/values-id/strings.xml index 11803a59..2d2b171e 100644 --- a/res/values-id/strings.xml +++ b/res/values-id/strings.xml @@ -21,8 +21,12 @@ Biggest - Smallest--> + Semua berkas + Pengaturan + Log + Tutup Umum Lainnya Akun @@ -67,10 +71,6 @@ Tidak ada apa-apa di sini. Unggah sesuatu! Memuat... Tidak ada satupun berkas dalam folder ini. - folder - folder-folder - berkas - berkas-berkas Sentuh pada berkas untuk menampilkan informasi tambahan Ukuran: Tipe: @@ -79,6 +79,7 @@ Unduh Segarkan berkas Berkas diubah namanya menjadi %1$s saat pengunggahan + Daftar Tata Letak Bagikan tautan Batal bagikan tautan Ya @@ -192,7 +193,8 @@ Tidak dapat mengotentikasi pada server ini Akun tidak ada di perangkat ini - Biarkan berkas tetap terbaru + Favorit + Hapus favorit Ubah nama Hapus Apakah Anda yakin ingin menghapus %1$s? @@ -210,6 +212,7 @@ Isi berkas sudah diselaraskan Folder tidak dapat dibuat Karakter yang dilarang: / \\ < > : \" | ? * + Nama berkas berisi setidaknya satu karakter yang tidak sah Nama berkas tidak boleh kosong Tunggu sebentar Masalah tidak terduga, silahkan pilih berkas dari apl yang berbeda @@ -307,6 +310,19 @@ Keamanan Unggah Lokasi Video Mengunduh folder %1$s tidak selesai + dibagikan + kepada Anda + %1$s dibagikan \"%2$s\" kepada Anda Menyegarkan sambungan Alamat server + Memori tidak cukup + Nama pengguna + 1 folder + %1$d folder + 1 berkas + 1 berkas, 1 folder + 1 berkas, %1$d folder + %1$d berkas + %1$d berkas, 1 folder + %1$d berkas, %2$d folder diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index 3b3e56fb..efee1eb6 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -71,10 +71,6 @@ Non c\'è niente qui. Carica qualcosa! Caricamento in corso... Non ci sono file in questa cartella. - cartella - cartelle - file - file Tocca un file per visualizzare informazioni aggiuntive. Dimensione: Tipo: @@ -197,7 +193,8 @@ Impossibile eseguire l\'autenticazione su questo server L\'account non esiste ancora sul dispositivo - Tieni aggiornato il file + Preferito + Rimuovi dai preferiti Rinomina Rimuovi Vuoi davvero rimuovere %1$s? @@ -315,8 +312,17 @@ Lo scaricamento della cartella %1$s non può essere completato condiviso con te + %1$s ha condiviso \"%2$s\" con te Aggiorna la connessione Indirizzo del server Memoria insufficiente Nome utente + 1 cartella + %1$d cartelle + 1 file + 1 file, 1 cartella + 1 file, %1$d cartelle + %1$d file + %1$d file, 1 cartella + %1$d file, %2$d cartelle diff --git a/res/values-ja-rJP/strings.xml b/res/values-ja-rJP/strings.xml index 5191529d..ef640859 100644 --- a/res/values-ja-rJP/strings.xml +++ b/res/values-ja-rJP/strings.xml @@ -21,8 +21,12 @@ Biggest - Smallest--> + すべてのファイル + 設定 + ログ + 閉じる 一般 もっと見る アカウント @@ -66,12 +70,8 @@ アップロード中 数秒前 ここには何もありません。何かアップロードしてください。 - 読込中 ... + 読込中... このフォルダーにはファイルがありません。 - フォルダー - フォルダー - ファイル - ファイル ファイルをタップすると追加情報が表示されます。 サイズ: タイプ: @@ -80,6 +80,7 @@ ダウンロード ファイルを同期 アップロード中にファイル名を %1$s に変更しました + リストレイアウト URLで共有 未共有のリンク はい @@ -132,6 +133,15 @@ ローカル: %1$s リモート: %1$s 十分なスペースがないため、選択されたファイルを %1$s フォルダーにコピーすることができません。コピーする代わりに、それらを移動させますか? + パスコードを入力してください + パスコードを入力 + アプリ開始時には毎回パスコードが要求されます + パスコードを再入力してください + パスコードを削除 + パスコードが一致しません + パスコードが正しくありません + パスコードを削除しました + パスコードを保存しました %1$s ミュージックプレーヤー %1$s (プレイ中) %1$s (読込中) @@ -180,11 +190,12 @@ 認証サーバーに接続中 ... サーバーはこの認証方式をサポートしていません %1$s は複数アカウントをサポートしていません - サーバーが正しいユーザーIDを返しませんでした。管理者に連絡してください。 + サーバーが正しいユーザーIDを返しませんでした。管理者に問い合わせてください。 このサーバーに対して認証できません デバイス上にまだアカウントが存在しません - ファイルを最新に保つ + お気に入り + お気に入りを解除 名前を変更 削除 本当に %1$s を削除しますか? @@ -202,11 +213,13 @@ ファイルコンテンツはすでに同期されています フォルダーを作成できませんでした 使用できない文字: / \\ < > : \" | ? * + ファイル名に1文字以上の無効な文字が含まれています ファイル名を空にすることはできません。 しばらくお待ちください 予期せぬ問題;他のアプリでファイルを選択してみてください。 ファイルは選択されていません リンクを送信… + プライベートストレージからファイルをコピー中 oAuth2でログイン oAuth2サーバーに接続中... サイトの識別子を確認できませんでした @@ -252,7 +265,7 @@ %1$s は、ローカルフォルダー %2$s にコピーできませんでした。 アップロードパス すみませんが、サーバーで共有が有効になっていません。 - 管理者に連絡してください。 + 管理者に問い合わせてください。 共有できません。ファイルがあるか確認してください。 このファイルまたはフォルダーを共有する際にエラーが発生しました 共有を解除できません。ファイルがあるか確認してください。 @@ -298,6 +311,19 @@ セキュリティ 動画のアップロードパス %1$s フォルダーのダウンロードが完了しませんでした + 共有中 + あなたと + %1$s は \"%2$s\" をあなたと共有しました 再接続中 サーバーアドレス + 十分なメモリがありません + ユーザー名 + 1 フォルダー + %1$d フォルダー + 1 ファイル + 1 ファイル、1 フォルダー + 1 ファイル、%1$d フォルダー + %1$d ファイル + %1$d ファイル、1 フォルダー + %1$d ファイル、%2$d フォルダー diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml index 7a1987e1..d924b4e3 100644 --- a/res/values-ka-rGE/strings.xml +++ b/res/values-ka-rGE/strings.xml @@ -95,7 +95,7 @@ ამოუცნობი სერვერის ვერსია კავშირის დამყარება ვერ მოხერხდა დაცული კავშირი დამყარდა - არ განაახლო ფაილი + ფავორიტი გადარქმევა წაშლა მხოლოდ ლოკალური diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml index 89bcc038..05de5dbc 100644 --- a/res/values-km/strings.xml +++ b/res/values-km/strings.xml @@ -81,7 +81,6 @@ កំពុង​​តែ​ព្យាយាម​ដើម្បី​ចូល... គ្មានបណ្តាញ​តភ្ជាប់ទេ មិនស្គាល់កំហុសបានកើតឡើង! - រក្សាឯកសាររហូតដល់កាលបរិច្ឆេទ ប្ដូរ​ឈ្មោះ ដកចេញ ទីកន្លែងតែមួយ diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml index 1e0b2fc5..056406d3 100644 --- a/res/values-kn/strings.xml +++ b/res/values-kn/strings.xml @@ -29,6 +29,7 @@ ತಪ್ಪಾಗಿದೆ ಗೊತ್ತಿಲ್ಲದ ದೋಷ ಗುಪ್ತ ಪದವನ್ನು ಬದಲಾಯಿಸಿ + ಅಚ್ಚುಮೆಚ್ಚಿನ ಮರುಹೆಸರಿಸು ತೆಗೆದುಹಾಕಿ ಕಳುಹಿಸಿ diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index cb4e8ba5..17ce6d04 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -65,12 +65,7 @@ 업로드 중 초 지남 내용이 없습니다. 업로드할 수 있습니다! - 불러오는 중... 이 폴더에 파일이 없습니다. - 폴더 - 폴더 - 파일 - 파일 파일을 누르면 추가 정보가 표시됩니다. 크기: 종류: @@ -192,7 +187,8 @@ 이 서버에 인증할 수 없음 장치에 아직 계정이 없음 - 파일을 최신 정보로 유지 + 책갈피 + 책갈피 해제 이름 바꾸기 삭제 %1$s을(를) 삭제하시겠습니까? diff --git a/res/values-lb/strings.xml b/res/values-lb/strings.xml index ff197132..1491e191 100644 --- a/res/values-lb/strings.xml +++ b/res/values-lb/strings.xml @@ -56,10 +56,6 @@ Eroplueden Sekonnen hier Hei ass näischt. Lued eppes erop! - Dossier - Dossieren - Fichier - Fichieren Gréisst: Typ: Erstallt: @@ -144,7 +140,6 @@ Gëff w.e.g. däin aktuellt Passwuert an Deng Sessioun ass ofgelaf. Connectéier dech nei w.e.g. De Server ënnerstëtzt dës Authentifizéierungsmethod net - Fichier aktuell halen Ëmbenennen Läschen Wëlls du %1$s wierklech läschen? diff --git a/res/values-lt-rLT/strings.xml b/res/values-lt-rLT/strings.xml index 9c15ba23..ae7c8ce0 100644 --- a/res/values-lt-rLT/strings.xml +++ b/res/values-lt-rLT/strings.xml @@ -63,12 +63,7 @@ Išsiunčiama prieš sekundę Čia tuščia. Įkelkite ką nors! - Įkeliama ... Šiame aplanke nėra failų. - katalogas - katalogai - failas - failai Palieskite failą, kad parodyti papildomą informaciją. Dydis: Tipas: @@ -171,7 +166,7 @@ Serveris nepalaiko šio autentikacijos metodo %1$s nepalaiko kelių paskyrų iš karto Jungiamasi prie autentikacijos serverio... - Laikyti failą naujinamą + Mėgiamas Pervadinti Pašalinti Ar tikrai norite pašalinti %1$s? diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml index 148242c8..e2099a31 100644 --- a/res/values-lv/strings.xml +++ b/res/values-lv/strings.xml @@ -55,12 +55,7 @@ Augšupielādē sekundes atpakaļ Te vēl nekas nav. Rīkojies, sāc augšupielādēt! - Ielāde... Šajā mapē nav failu - mape - mapes - fails - faili Uzsitiet uz datnes, lai redzētu papildinformāciju. Izmērs: Tips: @@ -118,7 +113,7 @@ Neatpazīta servera versija Nevarēja izveidot savienojumu Ir izveidots drošs savienojums - Uzturēt datni aktuālu + Iecienītais Pārsaukt Izņemt Tikai lokālos diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml index 7d6449f0..4bc0267b 100644 --- a/res/values-mk/strings.xml +++ b/res/values-mk/strings.xml @@ -65,12 +65,7 @@ Префрлам пред секунди Тука нема ништо. Префрлете нешто! - Вчитување Нема датотеки во оваа папка. - папка - папки - датотека - датотеки Кликнете на датотеката за дополнителни информации. Големина: Тип: @@ -192,7 +187,6 @@ Не можам да се авторизирам на овој сервер Сметката сеуште не постои на овој уред - Чувај ги датотеките ажурно Преименувај Отстрани Дали навистина сакаш да ја отстраниш %1$s? diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml index 809fc4d0..b2303ba9 100644 --- a/res/values-ms-rMY/strings.xml +++ b/res/values-ms-rMY/strings.xml @@ -1,8 +1,17 @@ + versi %1$s Muat naik Fail-fail + Buka dengan Set + Hantar + Susun + Susun mengikut + + A-Z + Baharu - Lama + @@ -23,10 +32,6 @@ Berhenti Memuatnaik Tiada apa-apa di sini. Muat naik sesuatu! - direktori - direktori - fail - fail Saiz Jenis Telah dibina: @@ -50,6 +55,7 @@ Namakan Buang Lokal sahaja + Hantar Akaun Alamat pelayan diff --git a/res/values-nb-rNO/strings.xml b/res/values-nb-rNO/strings.xml index 7e24d18d..3af14603 100644 --- a/res/values-nb-rNO/strings.xml +++ b/res/values-nb-rNO/strings.xml @@ -71,10 +71,6 @@ Ingenting her. Last opp noe! Laster... Det er ingen filer i denne mappen. - mappe - mapper - fil - filer Trykk på en fil for å vise ekstra informasjon. Størrelse: Type: @@ -197,7 +193,8 @@ Kan ikke autentisere mot denne serveren Kontoen eksisterer ikke på enheten enda - Hold filen oppdatert + Gjør til favoritt + Fjern favoritt Endre navn Fjern Vil du virkelig fjerne %1$s? @@ -315,8 +312,17 @@ Nedlasting av %1$s mappen kunne ikke fullføres delte med deg + %1$s delte \"%2$s\" med deg Oppfrisk forbindelse Server-adresse Ikke nok minne Brukernavn + 1 mappe + %1$d mapper + 1 fil + 1 fil, 1 mappe + 1 fil, %1$d mapper + %1$d filer + %1$d filer, 1 mappe + %1$d filer, %2$d mapper diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index ce646f81..c82b84c7 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -70,12 +70,8 @@ Download hier: %2$s Uploaden seconden geleden Er bevindt zich hier niets. Upload een bestand! - Laden ... + Laden... Er staan geen bestanden in deze map. - map - mappen - bestand - bestanden Druk op een bestand om extra informatie weer te geven Grootte: Type: @@ -200,7 +196,8 @@ Hieronder staan de lokale bestanden en de externe bestanden in %5$s waar ze naar Kan niet authenticeren tegen deze server Het account bestaat nog niet in dit apparaat - Houd bestand actueel + Favoriet + Niet meer favoriet Hernoemen Verwijderen Wilt u %1$s werkelijk verwijderen? @@ -323,4 +320,12 @@ Hieronder staan de lokale bestanden en de externe bestanden in %5$s waar ze naar Serveradres Niet voldoende geheugen Gebruikersnaam + 1 map + %1$d mappen + 1 bestand + 1 bestand, 1 map + 1 bestand, %1$d mappen + %1$d bestanden + %1$d bestanden, 1 map + %1$d bestanden, %2$d mappen diff --git a/res/values-nn-rNO/strings.xml b/res/values-nn-rNO/strings.xml index c2c1a90d..b99a6204 100644 --- a/res/values-nn-rNO/strings.xml +++ b/res/values-nn-rNO/strings.xml @@ -101,7 +101,7 @@ Feil ved SSL-oppstart Klarte ikkje å oppretta ei tilkopling Trygg tilkopling oppretta - Hald fila oppdatert + Favoritt Endra namn Fjern Berre lokalt diff --git a/res/values-oc/strings.xml b/res/values-oc/strings.xml index 56e9480c..69f2d181 100644 --- a/res/values-oc/strings.xml +++ b/res/values-oc/strings.xml @@ -1,5 +1,6 @@ + version %1$s Amontcarga Fichièrs Novèl dorsièr @@ -30,10 +31,6 @@ Al amontcargar segonda a Pas res dedins. Amontcarga qualquaren - Dorsièr - Dorsièrs - fichièr - fichièrs Talha : Tipe : Creat : @@ -56,6 +53,7 @@ Al avalcargar ... Capitada d\'avalcargar Causís lo compte + Apondre als favorits Torna nomenar Suprimir País : diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml index a206eb77..10295f22 100644 --- a/res/values-pa/strings.xml +++ b/res/values-pa/strings.xml @@ -86,7 +86,6 @@ ਸੁਰੱਖਿਅਤ ਕੁਨੈਕਸ਼ਨ ਬਣਾਇਆ ਗਿਆ ਹੈ ਗਲਤ ਯੂਜ਼ਰ-ਨਾਂ ਜਾਂ ਪਾਸਵਰਡ ਆਪਣਾ ਮੌਜੂਦਾ ਪਾਸਵਰਡ ਦਿਉ ਜੀ - ਫਾਇਲ ਨੂੰ ਅੱਪ ਟੂ ਡੇਟ ਰੱਖੋ ਨਾਂ ਬਦਲੋ ਹਟਾਓ ਕੇਵਲ ਲੋਕਲ diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 44611a46..6e634af6 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -65,12 +65,7 @@ Wysyłanie sekund temu Pusto. Wyślij coś! - Ładowanie... Nie ma plików w tym folderze. - folder - foldery - plik - pliki Dotknij plik aby wyświetlić dodatkowe informacje Rozmiar: Typ: @@ -193,7 +188,8 @@ Nie można autoryzować przy użyciu tego serwera Konto nie istnieje jeszcze na tym urządzeniu - Automatyczne aktualizuj plik + Ulubione + Usuń z ulubionych Zmień nazwę Usuń Czy naprawdę chcesz usunąć %1$s? diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml index bcb79cb5..56a6bfdf 100644 --- a/res/values-pt-rBR/strings.xml +++ b/res/values-pt-rBR/strings.xml @@ -71,10 +71,6 @@ Nada aqui. Envie alguma coisa! Carregando... Não existe nenhum arquivo nesta pasta. - pasta - pastas - arquivo - arquivos Toque em um arquivo para mostrar informações adicionais. Tamanho: Tipo: @@ -197,7 +193,8 @@ ⇥ Não foi possível autenticar neste servidor Conta ainda não existe no dispositivo - Manter arquivo atualizado + Favorito + Nãofavorito Renomear Remover Você realmente deseja remover %1$s? @@ -315,8 +312,17 @@ Baixar %1$s da pasta não pode ser completado compartilhado com você + %1$s compartilhado \"%2$s\" com você Reinicializar conexão Endereço do servidor Não há memoria suficiente Nome do Usuário + 1 pasta + %1$d pastas + 1 arquivo + 1 arquivo, 1 pasta + 1 arquivo, %1$d pastas + %1$d arquivos + %1$d arquivos, 1 pasta + %1$d arquivos, %2$d pastas diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml index 30f73526..dc327076 100644 --- a/res/values-pt-rPT/strings.xml +++ b/res/values-pt-rPT/strings.xml @@ -67,12 +67,7 @@ A enviar segundos atrás Aqui não existe nada. Envie alguma coisa! - A carregar ... Não existem ficheiros nesta pasta. - pasta - pastas - ficheiro - ficheiros Toque num ficheiro para visualizar a informação adicional. Tamanho: Tipo: @@ -184,7 +179,8 @@ O seu servidor não transmite o ID correcto. Por favor contacte o administrador. Não foi possível autenticar no servidor Conta ainda não existe no dispositivo - manter ficheiro actualizado + Favorito + Retirar Favorito Renomear Remover Tem a certeza que deseja remover %1$s ? diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml index 28c28e6f..8d6ac632 100644 --- a/res/values-ro/strings.xml +++ b/res/values-ro/strings.xml @@ -21,12 +21,17 @@ Biggest - Smallest--> + Toate fișierele + Setări + Înregistrări + Închide General Mai mult Conturi Administrare conturi + Parolă blocare Încărcare instantă de imagini Încarcă instantant imagini luate cu camera Încărcare instantă de videoclipuri. @@ -64,12 +69,8 @@ Încărcare secunde în urmă Nimic aici. Încarcă ceva! - Se incarca + Se încarcă... In acest folder nu sunt fisiere. - director - directoare - fișier - fișiere Selectati un fisier pentru a afisa informatia aditionala Mărime: Tip: @@ -78,6 +79,7 @@ Descarcă Împrospătare fişier Fișierul a fost redenumit %1$s în timpul încărcării + Aspect listă Share link Unshare link Da @@ -131,6 +133,15 @@ La distanta: %1$s Nu este suficient spațiu pentru a copia fișierele selectate în dosarul %1$s . Dorești să le muți în loc? + Te rugăm să introduci parola + Introdu parola + Parola va fi solicitată de fiecare dată când deschideți aplicația + Te rugăm să reintroduci parola + Șterge parola + Parolele nu se potrivesc + Parolă incorectă + Parolă ștearsă + Parolă stocată %1$s player de muzică %1$s (cântă) %1$s (încarcă) @@ -182,7 +193,7 @@ Server-ul dvs. nu întoarce un ID de utilizator corect, vă rugăm să contactați un administrator Nu se poate autentifica cu acest server Contul nu există încă în dispozitiv - Păstrează fișierul actualizat + Favorit Redenumește Elimină Doriti sigur sa stergeti %1$s? @@ -200,11 +211,13 @@ Continutul fisierului este deja sincronizat Nu a putut fi creat directorul Caractere interzise: / \\ < > : \" | ? * + Numele fișierului conține măcar un caracter invalid Numele fișierului nu poate fi gol. Așteaptă un moment Problema neasteptata ; selectati fisierul dintr-o aplicatie diferita Nu a fost selectat nici un fișier Trimite link la ... + Copiere fișier din stocare privată Întră în cont cu oAuth2 Se conectează la serverul oAuth2... Nu s-a putut verifica identitatea site-ului @@ -295,6 +308,19 @@ Securitate Calea de încărcare Video Descărcarea fișierului %1$s nu s-a finisat + partajat + cu tine + %1$s a partajat fișierul \"%2$s\" cu tine Reîmprospătează conexiunea Adresa server-ului + Memorie insuficientă + Utilizator + 1 folder + %1$d foldere + 1 fișier + 1 fișier, 1 folder + 1 fișier, %1$d foldere + %1$d fișiere + %1$d fișiere, 1 folder + %1$d fișiere, %2$d foldere diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index 85a259ed..e9aa20c4 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -68,14 +68,10 @@ Содержимое не получено. Нечего загружать. Доступ к общему ресурсу для %1$s запрещен Загрузка - пару секунд назад + несколько секунд назад Здесь ничего нет. Загрузите что-нибудь! Загрузка... В этом каталоге нет файлов. - каталог - каталоги - файл - файлы Нажмите на файл для отображения дополнительной информации. Размер: Тип: @@ -128,7 +124,7 @@ Не удалось синхронизировать файлы Содержимое %1$d файлов не может быть синхронизировано (конфликтов: %2$d) Некоторые загруженные файлы не были перенесены в локальную папку - Невозможно скопировать %1$d файлов из папки %2$s + Не удалось скопировать %1$d файлов из каталога %2$s в Начиная с версии 1.3.16, файлы, загружаемые с этого устройства, копируются в локальный каталог %1$s, чтобы предотвратить потерю данных при синхронизации файла с несколькими учётными записями.\n\nПоэтому все файлы, загруженные предыдущими версиями данного приложения, были скопированы в каталог %2$s. Однако, во время синхронизации что-то помешало завершить эту операцию. Можете оставить файлы как есть и удалить ссылку на %3$s, либо переместить их в %1$s и сохранить ссылку на %4$s.\n\nНиже перечислены локальные файлы, и соответствующие им удалённые файлы в %5$s, к которым они привязаны. Каталог %1$s больше не существует Переместить всё @@ -136,7 +132,7 @@ Некоторые файлы не могут быть перемещены Локальные: %1$s Удаленные: %1$s - Для копирования выбранных файлов в каталог %1$s недостаточно свободного места. Скопировать в другое место? + Для копирования выбранных файлов в каталог %1$s недостаточно свободного места. Переместить их вместо этого? Пожалуйста, укажите код Укажите ваш код Код будет запрашиваться каждый раз при запуске приложения @@ -198,7 +194,8 @@ ⇥ Невозможно авторизоваться на этом сервере Аккаунт не существует на устройстве ещё - Обновлять файл + Добавить в избранное + Убрать из избранного Переименовать Удалить Вы действительно хотите удалить %1$s? @@ -214,7 +211,7 @@ Переименование не может быть завершено Удаленный файл не может быть проверен Содержимое файла уже синхронизировано - Невозможно создать каталог + Не удалось создать каталог Недопустимые символы: / \\ < > : \" | ? * Имя файла содержит по крайней мере один некорректный символ Имя файла не может быть пустым @@ -303,7 +300,7 @@ Требуется аутентификация Неправильный пароль Переместить - Здесь ничего нет. Вы можете добавить каталог! + Здесь ничего нет. Вы можете создать каталог! Выбрать Невозможно переместить. Убедитесь, что файл существует Невозможно переместить каталог в его подкаталог @@ -313,7 +310,7 @@ Мгновенные загрузки Безопасность Путь для загрузки Видео - Загрузка папки %1$s не может быть завершена + Не удалось завершить скачивание каталога %1$s поделился с вами %1$s предоставил вам доступ к \"%2$s\" @@ -321,4 +318,12 @@ Адрес сервера Недостаточно памяти Имя пользователя + 1 каталог + %1$d каталогов + 1 файл + 1 файл, 1 папка + 1 файл, %1$d каталогов + %1$d файлов + %1$d файлов, 1 каталог + %1$d файлов, %2$d каталогов diff --git a/res/values-si-rLK/strings.xml b/res/values-si-rLK/strings.xml index 3fb139de..dce26eeb 100644 --- a/res/values-si-rLK/strings.xml +++ b/res/values-si-rLK/strings.xml @@ -26,10 +26,6 @@ උඩුගතවේ තත්පරයන්ට පෙර මෙහි කිසිවක් නොමැත. යමක් උඩුගත කරන්න - ෆෝල්ඩරය - ෆෝල්ඩර - ගොනුව - ගොනු වැඩි විස්තර සඳහා ගොනුවක් ස්පර්ෂ කරන්න විශාලත්වය: ගණය: @@ -67,7 +63,6 @@ හඳුනාගත නොහැකි අනුවාදයක් සම්බන්ධයක් ඇතිකර ගැනීමට නොහැකි විය රක්‍ෂිත සම්බන්ධතාවක් සාදන ලදී - ගොනුව යාවත්කාලීනව තබාගන්න නැවත නම් කරන්න ඉවත් කරන්න පෙදෙසි පමණක් diff --git a/res/values-sk-rSK/strings.xml b/res/values-sk-rSK/strings.xml index 27fc1c2f..d8c652d4 100644 --- a/res/values-sk-rSK/strings.xml +++ b/res/values-sk-rSK/strings.xml @@ -68,12 +68,7 @@ Nahrávanie pred sekundami Žiadny súbor. Nahrajte niečo! - Nahráva sa... V tomto priečinku nie sú žiadne súbory. - priečinok - priečinky - súbor - súbory Viac informácií získate kliknutím na súbor. Veľkosť: Typ: @@ -138,6 +133,8 @@ Vložte svoje heslo Prosím, vložte znovu svoje heslo: Zmazať svoje heslo + Bezpečnostný kód odstránený + Bezpečnostný kód uložený Prehrávač hudby %1$s %1$s (prehráva) %1$s (načítava) @@ -190,7 +187,8 @@ Nie je možné vykonať autentifikáciu na server Účet zatiaľ v zariadení neexistuje - Udržiavať súbor aktuálny. + Obľúbené + Odobrať z obľúbených Premenuj Odober Naozaj chcete odstrániť %1$s? diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml index a560ff9d..b6302b16 100644 --- a/res/values-sl/strings.xml +++ b/res/values-sl/strings.xml @@ -69,12 +69,7 @@ Pošiljanje pred nekaj sekundami Tukaj še ni ničesar. Najprej je treba datoteke poslati v oblak! - Poteka nalaganje ... V tej mapi ni datotek. - mapa - mape - datoteka - datoteke Pritisnite na datoteko za prikaz dodatnih podrobnosti. Velikost: Vrsta: @@ -197,7 +192,7 @@ Ni mogoče preveriti pristnosti strežnika Račun na napravi še ne obstaja. - Datoteka naj bo posodobljena + Priljubljene Preimenuj Odstrani Ali res želite odstraniti %1$s? @@ -315,6 +310,7 @@ Imenika %1$s ni mogoče prejeti v celoti v souporabi z vami + Uporabnik %1$s je omogočil souporabo %2$s z vami Osveži povezavo Naslov strežnika Ni dovolj pomnilnika diff --git a/res/values-sr-rSP/strings.xml b/res/values-sr-rSP/strings.xml index 679c36aa..6380fe3f 100644 --- a/res/values-sr-rSP/strings.xml +++ b/res/values-sr-rSP/strings.xml @@ -52,6 +52,7 @@ Nema konekcije Sigurna konekcija nije dostupna. Konekcija uspostavljena + Omiljeni Preimenij Ukloni Uklanjanje je uspelo diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml index f6bbd623..d1e14440 100644 --- a/res/values-sr/strings.xml +++ b/res/values-sr/strings.xml @@ -69,12 +69,7 @@ Отпремање пре пар секунди Овде нема ничег. Отпремите нешто! - Учитавам Нема фајлова у овој фасцикли. - фасцикла - фасцикли - фајл - фајлова Тапните на фајл ради приказа додатних информација. Величина: Врста: @@ -197,7 +192,8 @@ Не могу да аутентификујем са овим сервером Не постоји налог на уређају - Редовно ажурирај фајл + Омиљени + Неомиљени Преименуј Уклони Желите да уклоните %1$s? diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index 2d7f8b5f..58cf5e13 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -64,12 +64,7 @@ Laddar upp sekunder sedan Ingenting här. Ladda upp något! - Laddar... Det finns inga filer i den här mappen. - mapp - mappar - fil - filer Peka på en fil för att visa mer information. Storlek: Typ: @@ -180,7 +175,8 @@ Din server returnerar inte ett korrekt användare id, vänligen kontakta en administratör Kan inte autentisera mot servern - Håll filen uppdaterad + Favorit + Avfavoritisera Byt namn Radera Vill du verkligen ta bort %1$s? diff --git a/res/values-ta-rLK/strings.xml b/res/values-ta-rLK/strings.xml index 3122b6f5..1893380d 100644 --- a/res/values-ta-rLK/strings.xml +++ b/res/values-ta-rLK/strings.xml @@ -83,7 +83,7 @@ அங்கீகரிக்கப்படாத சேவையகம் பதிப்பு இணைப்பை நிறுவமுடியாது பாதுகாப்பான இணைப்பு உருவாக்கப்பட்டது. - நவீன கோப்பை வைத்திருக்கவும் + விருப்பமான பெயர்மாற்றம் அகற்றுக உள்ளூர் மட்டும் diff --git a/res/values-th-rTH/strings.xml b/res/values-th-rTH/strings.xml index 498cc97a..2efcd3ac 100644 --- a/res/values-th-rTH/strings.xml +++ b/res/values-th-rTH/strings.xml @@ -69,12 +69,8 @@ กำลังอัพโหลด วินาที ก่อนหน้านี้ ยังไม่มีไฟล์ใดๆเลย ลองอัปโหลดดูสิ! - กำลังโหลด ... + กำลังโหลด... ยังไม่มีไฟล์ในโฟลเดอร์นี้ - โฟลเดอร์ - โฟลเดอร์ - ไฟล์ - ไฟล์ แตะที่ไฟล์ เพื่อแสดงข้อมูลเพิ่มเติม ขนาด: ชนิด: @@ -196,7 +192,8 @@ เซิร์ฟเวอร์ของคุณไม่ได้ส่งคืนรหัสผู้ใช้ที่ถูกต้อง กรุณาติดต่อผู้ดูแลระบบ! ไม่สามารถยืนยันตัวตนกับเซิร์ฟเวอร์นี้ ยังไม่มีบัญชีในอุปกรณ์นี้ - ปรับปรุงไฟล์ให้ทันสมัยอยู่เสมอ + รายการโปรด + ออกจากรายการโปรด เปลี่ยนชื่อ ลบออก คุณต้องการที่จะลบ %1$s? @@ -313,8 +310,17 @@ การดาวน์โหลดโฟลเดอร์ %1$s อาจไม่สำเร็จ ถูกแชร์ กับคุณ + %1$s ได้แชร์ \"%2$s\" กับคุณ ฟื้นฟูการเชื่อมต่อ ที่อยู่เซิร์ฟเวอร์ หน่วยความจำไม่พอ ชื่อผู้ใช้ + 1 โฟลเดอร์ + %1$d โฟลเดอร์ + 1 ไฟล์ + 1 ไฟล์, 1 โฟลเดอร์ + 1 ไฟล์, %1$d โฟลเดอร์ + %1$d ไฟล์ + %1$d ไฟล์, 1 โฟลเดอร์ + %1$d ไฟล์, %2$d โฟลเดอร์ diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index 92cae34a..d950230f 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -71,10 +71,6 @@ Burada hiçbir şey yok. Bir şeyler yükleyin! Yükleniyor... Bu klasörde dosya yok. - klasör - klasör - dosya - dosya Ek bilgileri görmek için dosyaya dokunun. Boyut: Tür: @@ -197,7 +193,8 @@ Bu sunucuya karşı kimlik doğrulama yapılamaz Hesap henüz cihazda mevcut değil - Dosyayı güncel tut + Sık kullanılan + Favoriden kaldır Yeniden adlandır Kaldır Gerçekten %1$s dosyasını kaldırmak istiyor musunuz? @@ -315,8 +312,17 @@ %1$s klasörün indirilmesi tamamlanamadı sizinle paylaştı + %1$s, sizinle \"%2$s\" paylaşımını yaptı Bağlantıyı yenile Sunucu adresi Yeterli hafıza yok Kullanıcı adı + 1 klasör + %1$d klasör + 1 dosya + 1 dosya, 1 klasör + 1 dosya, %1$d klasör + %1$d dosya + %1$d dosya, 1 klasör + %1$d dosya, %2$d klasör diff --git a/res/values-tzl/strings.xml b/res/values-tzl/strings.xml new file mode 100644 index 00000000..37e61524 --- /dev/null +++ b/res/values-tzl/strings.xml @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/res/values-ug/strings.xml b/res/values-ug/strings.xml index f5a7f4ad..97255fef 100644 --- a/res/values-ug/strings.xml +++ b/res/values-ug/strings.xml @@ -43,6 +43,7 @@ ئىم ئۆزگەرت قىسقۇچ ئاتى ھېسابات تاللاڭ + يىغقۇچ ئات ئۆزگەرت چىقىرىۋەت يوللا diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml index c2341398..390b4e3b 100644 --- a/res/values-uk/strings.xml +++ b/res/values-uk/strings.xml @@ -21,8 +21,12 @@ Biggest - Smallest--> + Усі файли + Налаштування + Журнали + Закрити Основне Більше Облікові записи @@ -64,12 +68,8 @@ Завантаження секунди тому Тут нічого немає. Відвантажте що-небудь! - Завантаження... + Завантаження… В цій теці немає файлів. - тека - теки - файл - файли Натисніть на файлі для відображення додаткової інформації Розмір: Тип: @@ -182,7 +182,7 @@ ⇥ Аутентифікація на цьому сервері неможлива Користвача в пристрої не існуе - Оновлювати файл + Улюблений Перейменувати Видалити Ви дійсно бажаєте видалити %1$s? @@ -297,6 +297,18 @@ Безпека Шлях завантаження відео Скачування теки %1$s не може бути завершено + з Вами + %1$s поділився \"%2$s\" з вами Оновити з\'єднання Ареса серверу + Недостатньо пам\'яті + Ім\'я користувача + 1 тека + %1$d тек + 1 файл + 1 файл, 1 тека + 1 файл, %1$d тек + %1$d файлів + %1$d файлів, 1 тека + %1$d файлів, %2$d тек diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml index 622322f6..e4536eb5 100644 --- a/res/values-vi/strings.xml +++ b/res/values-vi/strings.xml @@ -50,10 +50,6 @@ Đang tải lên vài giây trước Không có gì ở đây .Hãy tải lên một cái gì đó ! - folder - folders - file - files Tap vào một tập tin để hiển thị thêm thông tin Kích thước: Loại: @@ -154,7 +150,7 @@ Đang kết nối đến máy chủ xác thực... Máy chủ không hổ trợ phương thức xác thực này %1$s không hỗ trợ nhiều tài khoản - Giữ tập tin cập nhật + Ưu thích Sửa tên Xóa Chỉ cục bộ diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index 6afb25d5..6f3f84c7 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -69,12 +69,7 @@ 上传 几秒前 这里还什么都没有。上传些东西吧! - 载入中.... 在该文件夹中不存在文件。 - 文件夹 - 文件夹 - 文件 - 文件 点击一个文件可以显示额外的信息。 大小: 类型: @@ -197,7 +192,7 @@ 无法通过此服务器认证 设备中还未存在该帐号 - 保证文件更新 + 收藏 重命名 删除 你确定要删除 %1$s 吗? diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index 369ae9ec..581c684e 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -68,12 +68,7 @@ 上傳中 幾秒前 這裡還沒有東西,上傳一些吧! - 載入中… 這個目錄中沒有任何檔案. - 資料夾 - 資料夾 - 檔案 - 檔案 在檔案上輕觸來顯示更多資訊。 容量: 類型: @@ -186,7 +181,7 @@ 無法在這個伺服器上取得認證 帳號目前不存在於本裝置 - 讓檔案保持最新的 + 我的最愛 重新命名 移除 您真的要移除 %1$s ? diff --git a/res/values/strings.xml b/res/values/strings.xml index 716d3b2a..22cf669d 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -200,7 +200,8 @@ Cannot authenticate against this server Account does not exist in the device yet - Keep file up to date + Favorite + Unfavorite Rename Remove "Do you really want to remove %1$s?" diff --git a/src/com/owncloud/android/datamodel/FileDataStorageManager.java b/src/com/owncloud/android/datamodel/FileDataStorageManager.java index 7db0a637..c5fc94d1 100644 --- a/src/com/owncloud/android/datamodel/FileDataStorageManager.java +++ b/src/com/owncloud/android/datamodel/FileDataStorageManager.java @@ -190,7 +190,7 @@ public class FileDataStorageManager { cv.put(ProviderTableMeta.FILE_ACCOUNT_OWNER, mAccount.name); cv.put(ProviderTableMeta.FILE_LAST_SYNC_DATE, file.getLastSyncDateForProperties()); cv.put(ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA, file.getLastSyncDateForData()); - cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, file.keepInSync() ? 1 : 0); + cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, file.isFavorite() ? 1 : 0); cv.put(ProviderTableMeta.FILE_ETAG, file.getEtag()); cv.put(ProviderTableMeta.FILE_SHARE_BY_LINK, file.isShareByLink() ? 1 : 0); cv.put(ProviderTableMeta.FILE_PUBLIC_LINK, file.getPublicLink()); @@ -300,7 +300,7 @@ public class FileDataStorageManager { cv.put(ProviderTableMeta.FILE_ACCOUNT_OWNER, mAccount.name); cv.put(ProviderTableMeta.FILE_LAST_SYNC_DATE, file.getLastSyncDateForProperties()); cv.put(ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA, file.getLastSyncDateForData()); - cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, file.keepInSync() ? 1 : 0); + cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, file.isFavorite() ? 1 : 0); cv.put(ProviderTableMeta.FILE_ETAG, file.getEtag()); cv.put(ProviderTableMeta.FILE_SHARE_BY_LINK, file.isShareByLink() ? 1 : 0); cv.put(ProviderTableMeta.FILE_PUBLIC_LINK, file.getPublicLink()); @@ -377,7 +377,7 @@ public class FileDataStorageManager { cv.put(ProviderTableMeta.FILE_ACCOUNT_OWNER, mAccount.name); cv.put(ProviderTableMeta.FILE_LAST_SYNC_DATE, folder.getLastSyncDateForProperties()); cv.put(ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA, folder.getLastSyncDateForData()); - cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, folder.keepInSync() ? 1 : 0); + cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, folder.isFavorite() ? 1 : 0); cv.put(ProviderTableMeta.FILE_ETAG, folder.getEtag()); cv.put(ProviderTableMeta.FILE_SHARE_BY_LINK, folder.isShareByLink() ? 1 : 0); cv.put(ProviderTableMeta.FILE_PUBLIC_LINK, folder.getPublicLink()); @@ -877,7 +877,7 @@ public class FileDataStorageManager { .getColumnIndex(ProviderTableMeta.FILE_LAST_SYNC_DATE))); file.setLastSyncDateForData(c.getLong(c. getColumnIndex(ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA))); - file.setKeepInSync(c.getInt( + file.setFavorite(c.getInt( c.getColumnIndex(ProviderTableMeta.FILE_KEEP_IN_SYNC)) == 1 ? true : false); file.setEtag(c.getString(c.getColumnIndex(ProviderTableMeta.FILE_ETAG))); file.setShareByLink(c.getInt( @@ -1261,7 +1261,7 @@ public class FileDataStorageManager { ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA, file.getLastSyncDateForData() ); - cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, file.keepInSync() ? 1 : 0); + cv.put(ProviderTableMeta.FILE_KEEP_IN_SYNC, file.isFavorite() ? 1 : 0); cv.put(ProviderTableMeta.FILE_ETAG, file.getEtag()); cv.put(ProviderTableMeta.FILE_SHARE_BY_LINK, file.isShareByLink() ? 1 : 0); cv.put(ProviderTableMeta.FILE_PUBLIC_LINK, file.getPublicLink()); diff --git a/src/com/owncloud/android/datamodel/OCFile.java b/src/com/owncloud/android/datamodel/OCFile.java index 2c9c53be..d1821b44 100644 --- a/src/com/owncloud/android/datamodel/OCFile.java +++ b/src/com/owncloud/android/datamodel/OCFile.java @@ -60,7 +60,7 @@ public class OCFile implements Parcelable, Comparable { private boolean mNeedsUpdating; private long mLastSyncDateForProperties; private long mLastSyncDateForData; - private boolean mKeepInSync; + private boolean mFavorite; private String mEtag; @@ -107,7 +107,7 @@ public class OCFile implements Parcelable, Comparable { mLocalPath = source.readString(); mMimeType = source.readString(); mNeedsUpdating = source.readInt() == 0; - mKeepInSync = source.readInt() == 1; + mFavorite = source.readInt() == 1; mLastSyncDateForProperties = source.readLong(); mLastSyncDateForData = source.readLong(); mEtag = source.readString(); @@ -132,7 +132,7 @@ public class OCFile implements Parcelable, Comparable { dest.writeString(mLocalPath); dest.writeString(mMimeType); dest.writeInt(mNeedsUpdating ? 1 : 0); - dest.writeInt(mKeepInSync ? 1 : 0); + dest.writeInt(mFavorite ? 1 : 0); dest.writeLong(mLastSyncDateForProperties); dest.writeLong(mLastSyncDateForData); dest.writeString(mEtag); @@ -346,7 +346,7 @@ public class OCFile implements Parcelable, Comparable { mModifiedTimestampAtLastSyncForData = 0; mLastSyncDateForProperties = 0; mLastSyncDateForData = 0; - mKeepInSync = false; + mFavorite = false; mNeedsUpdating = false; mEtag = null; mShareByLink = false; @@ -444,12 +444,12 @@ public class OCFile implements Parcelable, Comparable { mLastSyncDateForData = lastSyncDate; } - public void setKeepInSync(boolean keepInSync) { - mKeepInSync = keepInSync; + public void setFavorite(boolean favorite) { + mFavorite = favorite; } - public boolean keepInSync() { - return mKeepInSync; + public boolean isFavorite() { + return mFavorite; } @Override @@ -483,8 +483,8 @@ public class OCFile implements Parcelable, Comparable { @Override public String toString() { - String asString = "[id=%s, name=%s, mime=%s, downloaded=%s, local=%s, remote=%s, parentId=%s, keepInSync=%s etag=%s]"; - asString = String.format(asString, Long.valueOf(mId), getFileName(), mMimeType, isDown(), mLocalPath, mRemotePath, Long.valueOf(mParentId), Boolean.valueOf(mKeepInSync), mEtag); + String asString = "[id=%s, name=%s, mime=%s, downloaded=%s, local=%s, remote=%s, parentId=%s, favorite=%s etag=%s]"; + asString = String.format(asString, Long.valueOf(mId), getFileName(), mMimeType, isDown(), mLocalPath, mRemotePath, Long.valueOf(mParentId), Boolean.valueOf(mFavorite), mEtag); return asString; } diff --git a/src/com/owncloud/android/files/FileMenuFilter.java b/src/com/owncloud/android/files/FileMenuFilter.java index d6c075d6..2c2754cc 100644 --- a/src/com/owncloud/android/files/FileMenuFilter.java +++ b/src/com/owncloud/android/files/FileMenuFilter.java @@ -215,6 +215,20 @@ public class FileMenuFilter { toShow.add(R.id.action_send_file); } + // FAVORITES + if (mFile == null || downloading || uploading || mFile.isFolder() || mFile.isFavorite()) { + toHide.add(R.id.action_favorite_file); + } else { + toShow.add(R.id.action_favorite_file); + } + + // UNFAVORITES + if (mFile == null || downloading || uploading || mFile.isFolder() || !mFile.isFavorite()) { + toHide.add(R.id.action_unfavorite_file); + } else { + toShow.add(R.id.action_unfavorite_file); + } + } } diff --git a/src/com/owncloud/android/files/FileOperationsHelper.java b/src/com/owncloud/android/files/FileOperationsHelper.java index 75fae370..2f2907da 100644 --- a/src/com/owncloud/android/files/FileOperationsHelper.java +++ b/src/com/owncloud/android/files/FileOperationsHelper.java @@ -40,6 +40,7 @@ import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.lib.resources.status.OwnCloudVersion; import com.owncloud.android.services.OperationsService; +import com.owncloud.android.services.observer.FileObserverService; import com.owncloud.android.ui.activity.FileActivity; import com.owncloud.android.ui.dialog.ShareLinkToDialog; @@ -223,6 +224,24 @@ public class FileOperationsHelper { mFileActivity.startService(intent); } } + + public void toggleFavorite(OCFile file, boolean isFavorite) { + file.setFavorite(isFavorite); + mFileActivity.getStorageManager().saveFile(file); + + /// register the OCFile instance in the observer service to monitor local updates + Intent observedFileIntent = FileObserverService.makeObservedFileIntent( + mFileActivity, + file, + mFileActivity.getAccount(), + isFavorite); + mFileActivity.startService(observedFileIntent); + + /// immediate content synchronization + if (file.isFavorite()) { + syncFile(file); + } + } public void renameFile(OCFile file, String newFilename) { // RenameFile @@ -282,8 +301,8 @@ public class FileOperationsHelper { downloaderBinder.cancel(account, file); // TODO - review why is this here, and solve in a better way - // Remove etag for parent, if file is a keep_in_sync - if (file.keepInSync()) { + // Remove etag for parent, if file is a favorite + if (file.isFavorite()) { OCFile parent = mFileActivity.getStorageManager().getFileById(file.getParentId()); parent.setEtag(""); mFileActivity.getStorageManager().saveFile(parent); diff --git a/src/com/owncloud/android/operations/RefreshFolderOperation.java b/src/com/owncloud/android/operations/RefreshFolderOperation.java index 2e3c4692..ddbffb8c 100644 --- a/src/com/owncloud/android/operations/RefreshFolderOperation.java +++ b/src/com/owncloud/android/operations/RefreshFolderOperation.java @@ -365,7 +365,7 @@ public class RefreshFolderOperation extends RemoteOperation { if (localFile != null) { // some properties of local state are kept unmodified remoteFile.setFileId(localFile.getFileId()); - remoteFile.setKeepInSync(localFile.keepInSync()); + remoteFile.setFavorite(localFile.isFavorite()); remoteFile.setLastSyncDateForData(localFile.getLastSyncDateForData()); remoteFile.setModificationTimestampAtLastSyncForData( localFile.getModificationTimestampAtLastSyncForData() @@ -397,7 +397,7 @@ public class RefreshFolderOperation extends RemoteOperation { searchForLocalFileInDefaultPath(remoteFile); // legacy /// prepare content synchronization for kept-in-sync files - if (remoteFile.keepInSync()) { + if (remoteFile.isFavorite()) { SynchronizeFileOperation operation = new SynchronizeFileOperation( localFile, remoteFile, mAccount, diff --git a/src/com/owncloud/android/operations/SynchronizeFileOperation.java b/src/com/owncloud/android/operations/SynchronizeFileOperation.java index 27b0b5ad..f94adb15 100644 --- a/src/com/owncloud/android/operations/SynchronizeFileOperation.java +++ b/src/com/owncloud/android/operations/SynchronizeFileOperation.java @@ -245,12 +245,12 @@ public class SynchronizeFileOperation extends SyncOperation { if (mSyncFileContents) { requestForDownload(mLocalFile); // local, not server; we won't to keep - // the value of keepInSync! + // the value of favorite! // the update of local data will be done later by the FileUploader // service when the upload finishes } else { // TODO CHECK: is this really useful in some point in the code? - mServerFile.setKeepInSync(mLocalFile.keepInSync()); + mServerFile.setFavorite(mLocalFile.isFavorite()); mServerFile.setLastSyncDateForData(mLocalFile.getLastSyncDateForData()); mServerFile.setStoragePath(mLocalFile.getStoragePath()); mServerFile.setParentId(mLocalFile.getParentId()); @@ -285,7 +285,7 @@ public class SynchronizeFileOperation extends SyncOperation { i.putExtra(FileUploader.KEY_ACCOUNT, mAccount); i.putExtra(FileUploader.KEY_FILE, file); /*i.putExtra(FileUploader.KEY_REMOTE_FILE, mRemotePath); - // doing this we would lose the value of keepInSync in the road, and maybe + // doing this we would lose the value of isFavorite in the road, and maybe // it's not updated in the database when the FileUploader service gets it! i.putExtra(FileUploader.KEY_LOCAL_FILE, localFile.getStoragePath());*/ i.putExtra(FileUploader.KEY_UPLOAD_TYPE, FileUploader.UPLOAD_SINGLE_FILE); diff --git a/src/com/owncloud/android/operations/SynchronizeFolderOperation.java b/src/com/owncloud/android/operations/SynchronizeFolderOperation.java index 6bf1ef82..78b6a7ba 100644 --- a/src/com/owncloud/android/operations/SynchronizeFolderOperation.java +++ b/src/com/owncloud/android/operations/SynchronizeFolderOperation.java @@ -321,7 +321,7 @@ public class SynchronizeFolderOperation extends SyncOperation { if (localFile != null) { // some properties of local state are kept unmodified remoteFile.setFileId(localFile.getFileId()); - remoteFile.setKeepInSync(localFile.keepInSync()); + remoteFile.setFavorite(localFile.isFavorite()); remoteFile.setLastSyncDateForData(localFile.getLastSyncDateForData()); remoteFile.setModificationTimestampAtLastSyncForData( localFile.getModificationTimestampAtLastSyncForData() @@ -360,7 +360,7 @@ public class SynchronizeFolderOperation extends SyncOperation { startSyncFolderOperation(remoteFile.getRemotePath()); } - } else if (remoteFile.keepInSync()) { + } else if (remoteFile.isFavorite()) { /// prepare content synchronization for kept-in-sync files SynchronizeFileOperation operation = new SynchronizeFileOperation( localFile, diff --git a/src/com/owncloud/android/operations/UploadFileOperation.java b/src/com/owncloud/android/operations/UploadFileOperation.java index b114195b..12cf1ac7 100644 --- a/src/com/owncloud/android/operations/UploadFileOperation.java +++ b/src/com/owncloud/android/operations/UploadFileOperation.java @@ -407,7 +407,7 @@ public class UploadFileOperation extends RemoteOperation { newFile.setModificationTimestampAtLastSyncForData( mFile.getModificationTimestampAtLastSyncForData()); // newFile.setEtag(mFile.getEtag()) - newFile.setKeepInSync(mFile.keepInSync()); + newFile.setFavorite(mFile.isFavorite()); newFile.setLastSyncDateForProperties(mFile.getLastSyncDateForProperties()); newFile.setLastSyncDateForData(mFile.getLastSyncDateForData()); newFile.setStoragePath(mFile.getStoragePath()); diff --git a/src/com/owncloud/android/ui/activity/FileActivity.java b/src/com/owncloud/android/ui/activity/FileActivity.java index 9a952e41..b38e77b8 100644 --- a/src/com/owncloud/android/ui/activity/FileActivity.java +++ b/src/com/owncloud/android/ui/activity/FileActivity.java @@ -67,6 +67,7 @@ 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.CreateShareOperation; +import com.owncloud.android.operations.SynchronizeFileOperation; import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.services.OperationsService; @@ -75,6 +76,8 @@ import com.owncloud.android.ui.NavigationDrawerItem; import com.owncloud.android.ui.adapter.NavigationDrawerListAdapter; import com.owncloud.android.ui.dialog.LoadingDialog; import com.owncloud.android.ui.dialog.SharePasswordDialogFragment; +import com.owncloud.android.ui.fragment.FileDetailFragment; +import com.owncloud.android.ui.fragment.FileFragment; import com.owncloud.android.utils.ErrorMessageAdapter; import java.util.ArrayList; @@ -93,49 +96,49 @@ public class FileActivity extends ActionBarActivity "com.owncloud.android.ui.activity.WAITING_TO_PREVIEW"; public static final String EXTRA_FROM_NOTIFICATION = "com.owncloud.android.ui.activity.FROM_NOTIFICATION"; - + public static final String TAG = FileActivity.class.getSimpleName(); - + private static final String DIALOG_WAIT_TAG = "DIALOG_WAIT"; private static final String KEY_WAITING_FOR_OP_ID = "WAITING_FOR_OP_ID"; private static final String DIALOG_SHARE_PASSWORD = "DIALOG_SHARE_PASSWORD"; private static final String KEY_TRY_SHARE_AGAIN = "TRY_SHARE_AGAIN"; private static final String KEY_ACTION_BAR_TITLE = "ACTION_BAR_TITLE"; - + protected static final long DELAY_TO_REQUEST_OPERATION_ON_ACTIVITY_RESULTS = 200; - - + + /** OwnCloud {@link Account} where the main {@link OCFile} handled by the activity is located.*/ private Account mAccount; - + /** Main {@link OCFile} handled by the activity.*/ private OCFile mFile; - + /** Flag to signal that the activity will is finishing to enforce the creation of an ownCloud * {@link Account} */ private boolean mRedirectingToSetupAccount = false; - - /** Flag to signal when the value of mAccount was set */ + + /** Flag to signal when the value of mAccount was set */ protected boolean mAccountWasSet; - - /** Flag to signal when the value of mAccount was restored from a saved state */ + + /** Flag to signal when the value of mAccount was restored from a saved state */ protected boolean mAccountWasRestored; - + /** Flag to signal if the activity is launched by a notification */ private boolean mFromNotification; - + /** Messages handler associated to the main thread and the life cycle of the activity */ private Handler mHandler; - + /** Access point to the cached database for the current ownCloud {@link Account} */ private FileDataStorageManager mStorageManager = null; - + private FileOperationsHelper mFileOperationsHelper; - + private ServiceConnection mOperationsServiceConnection = null; - + private OperationsServiceBinder mOperationsServiceBinder = null; - + protected FileDownloaderBinder mDownloaderBinder = null; protected FileUploaderBinder mUploaderBinder = null; private ServiceConnection mDownloadServiceConnection, mUploadServiceConnection = null; @@ -158,12 +161,12 @@ public class FileActivity extends ActionBarActivity // TODO re-enable when "Accounts" is available in Navigation Drawer // protected boolean mShowAccounts = false; - + /** - * Loads the ownCloud {@link Account} and main {@link OCFile} to be handled by the instance of + * Loads the ownCloud {@link Account} and main {@link OCFile} to be handled by the instance of * the {@link FileActivity}. - * - * Grants that a valid ownCloud {@link Account} is associated to the instance, or that the user + * + * Grants that a valid ownCloud {@link Account} is associated to the instance, or that the user * is requested to create a new one. */ @Override @@ -191,11 +194,11 @@ public class FileActivity extends ActionBarActivity // or database setAccount(account, savedInstanceState != null); - + mOperationsServiceConnection = new OperationsServiceConnection(); bindService(new Intent(this, OperationsService.class), mOperationsServiceConnection, Context.BIND_AUTO_CREATE); - + mDownloadServiceConnection = newTransferenceServiceConnection(); if (mDownloadServiceConnection != null) { bindService(new Intent(this, FileDownloader.class), mDownloadServiceConnection, @@ -220,8 +223,8 @@ public class FileActivity extends ActionBarActivity } /** - * Since ownCloud {@link Account}s can be managed from the system setting menu, - * the existence of the {@link Account} associated to the instance must be checked + * Since ownCloud {@link Account}s can be managed from the system setting menu, + * the existence of the {@link Account} associated to the instance must be checked * every time it is restarted. */ @Override @@ -235,8 +238,8 @@ public class FileActivity extends ActionBarActivity Log_OC.v(TAG, "onRestart() end"); } - - @Override + + @Override protected void onStart() { super.onStart(); @@ -244,26 +247,26 @@ public class FileActivity extends ActionBarActivity onAccountSet(mAccountWasRestored); } } - + @Override protected void onResume() { super.onResume(); - + if (mOperationsServiceBinder != null) { doOnResumeAndBound(); } } - + @Override protected void onPause() { if (mOperationsServiceBinder != null) { mOperationsServiceBinder.removeOperationListener(this); } - + super.onPause(); } - - + + @Override protected void onDestroy() { if (mOperationsServiceConnection != null) { @@ -435,12 +438,12 @@ public class FileActivity extends ActionBarActivity /** - * Sets and validates the ownCloud {@link Account} associated to the Activity. - * + * Sets and validates the ownCloud {@link Account} associated to the Activity. + * * If not valid, tries to swap it for other valid and existing ownCloud {@link Account}. - * - * POSTCONDITION: updates {@link #mAccountWasSet} and {@link #mAccountWasRestored}. - * + * + * POSTCONDITION: updates {@link #mAccountWasSet} and {@link #mAccountWasRestored}. + * * @param account New {@link Account} to set. * @param savedAccount When 'true', account was retrieved from a saved instance state. */ @@ -453,19 +456,19 @@ public class FileActivity extends ActionBarActivity mAccount = account; mAccountWasSet = true; mAccountWasRestored = (savedAccount || mAccount.equals(oldAccount)); - + } else { swapToDefaultAccount(); } } - + /** - * Tries to swap the current ownCloud {@link Account} for other valid and existing. - * - * If no valid ownCloud {@link Account} exists, the the user is requested + * Tries to swap the current ownCloud {@link Account} for other valid and existing. + * + * If no valid ownCloud {@link Account} exists, the the user is requested * to create a new ownCloud {@link Account}. - * + * * POSTCONDITION: updates {@link #mAccountWasSet} and {@link #mAccountWasRestored}. */ private void swapToDefaultAccount() { @@ -477,7 +480,7 @@ public class FileActivity extends ActionBarActivity mRedirectingToSetupAccount = true; mAccountWasSet = false; mAccountWasRestored = false; - + } else { mAccountWasSet = true; mAccountWasRestored = (newAccount.equals(mAccount)); @@ -500,7 +503,7 @@ public class FileActivity extends ActionBarActivity null); } - + /** * {@inheritDoc} */ @@ -513,32 +516,32 @@ public class FileActivity extends ActionBarActivity outState.putBoolean(KEY_TRY_SHARE_AGAIN, mTryShareAgain); outState.putString(KEY_ACTION_BAR_TITLE, getSupportActionBar().getTitle().toString()); } - - + + /** * Getter for the main {@link OCFile} handled by the activity. - * + * * @return Main {@link OCFile} handled by the activity. */ public OCFile getFile() { return mFile; } - + /** * Setter for the main {@link OCFile} handled by the activity. - * + * * @param file Main {@link OCFile} to be handled by the activity. */ public void setFile(OCFile file) { mFile = file; } - + /** * Getter for the ownCloud {@link Account} where the main {@link OCFile} handled by the activity * is located. - * + * * @return OwnCloud {@link Account} where the main {@link OCFile} handled by the activity * is located. */ @@ -556,7 +559,7 @@ public class FileActivity extends ActionBarActivity public boolean fromNotification() { return mFromNotification; } - + /** * @return 'True' when the Activity is finishing to enforce the setup of a new account. */ @@ -571,11 +574,11 @@ public class FileActivity extends ActionBarActivity public void setTryShareAgain(boolean tryShareAgain) { mTryShareAgain = tryShareAgain; } - + public OperationsServiceBinder getOperationsServiceBinder() { return mOperationsServiceBinder; } - + protected ServiceConnection newTransferenceServiceConnection() { return null; } @@ -583,7 +586,7 @@ public class FileActivity extends ActionBarActivity /** * Helper class handling a callback from the {@link AccountManager} after the creation of * a new ownCloud {@link Account} finished, successfully or not. - * + * * At this moment, only called after the creation of the first account. */ public class AccountCreationCallback implements AccountManagerCallback { @@ -604,11 +607,11 @@ public class FileActivity extends ActionBarActivity } } catch (OperationCanceledException e) { Log_OC.d(TAG, "Account creation canceled"); - + } catch (Exception e) { Log_OC.e(TAG, "Account creation finished in exception: ", e); } - + } else { Log_OC.e(TAG, "Account creation callback with null bundle"); } @@ -616,19 +619,19 @@ public class FileActivity extends ActionBarActivity moveTaskToBack(true); } } - + } - - + + /** * Called when the ownCloud {@link Account} associated to the Activity was just updated. - * + * * Child classes must grant that state depending on the {@link Account} is updated. */ protected void onAccountSet(boolean stateWasRecovered) { if (getAccount() != null) { mStorageManager = new FileDataStorageManager(getAccount(), getContentResolver()); - + } else { Log_OC.wtf(TAG, "onAccountChanged was called with NULL account associated!"); } @@ -648,13 +651,13 @@ public class FileActivity extends ActionBarActivity public Handler getHandler() { return mHandler; } - + public FileOperationsHelper getFileOperationsHelper() { return mFileOperationsHelper; } - + /** - * + * * @param operation Removal operation performed. * @param result Result of the removal. */ @@ -662,17 +665,17 @@ public class FileActivity extends ActionBarActivity public void onRemoteOperationFinish(RemoteOperation operation, RemoteOperationResult result) { Log_OC.d(TAG, "Received result of operation in FileActivity - common behaviour for all the " + "FileActivities "); - + mFileOperationsHelper.setOpIdWaitingFor(Long.MAX_VALUE); - + if (!result.isSuccess() && ( - result.getCode() == ResultCode.UNAUTHORIZED || + result.getCode() == ResultCode.UNAUTHORIZED || result.isIdPRedirection() || (result.isException() && result.getException() instanceof AuthenticatorException) )) { - + requestCredentialsUpdate(); - + if (result.getCode() == ResultCode.UNAUTHORIZED) { dismissLoadingDialog(); Toast t = Toast.makeText(this, ErrorMessageAdapter.getErrorCauseMessage(result, @@ -684,13 +687,16 @@ public class FileActivity extends ActionBarActivity } else if (operation instanceof CreateShareOperation) { onCreateShareOperationFinish((CreateShareOperation) operation, result); - + } else if (operation instanceof UnshareLinkOperation) { onUnshareLinkOperationFinish((UnshareLinkOperation)operation, result); - + } else if (operation instanceof SynchronizeFolderOperation) { onSynchronizeFolderOperationFinish((SynchronizeFolderOperation)operation, result); + }else if (operation instanceof SynchronizeFileOperation) { + onSynchronizeFileOperationFinish((SynchronizeFileOperation)operation, result); + } } @@ -698,12 +704,12 @@ public class FileActivity extends ActionBarActivity Intent updateAccountCredentials = new Intent(this, AuthenticatorActivity.class); updateAccountCredentials.putExtra(AuthenticatorActivity.EXTRA_ACCOUNT, getAccount()); updateAccountCredentials.putExtra( - AuthenticatorActivity.EXTRA_ACTION, + AuthenticatorActivity.EXTRA_ACTION, AuthenticatorActivity.ACTION_UPDATE_EXPIRED_TOKEN); updateAccountCredentials.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); startActivity(updateAccountCredentials); } - + private void onCreateShareOperationFinish(CreateShareOperation operation, RemoteOperationResult result) { @@ -711,7 +717,7 @@ public class FileActivity extends ActionBarActivity if (result.isSuccess()) { mTryShareAgain = false; updateFileFromDB(); - + Intent sendIntent = operation.getSendIntent(); startActivity(sendIntent); } else { @@ -735,22 +741,22 @@ public class FileActivity extends ActionBarActivity Toast.LENGTH_LONG); t.show(); } - } + } } - - + + private void onUnshareLinkOperationFinish(UnshareLinkOperation operation, RemoteOperationResult result) { dismissLoadingDialog(); - + if (result.isSuccess()){ updateFileFromDB(); - + } else { Toast t = Toast.makeText(this, ErrorMessageAdapter.getErrorCauseMessage(result, operation, getResources()), Toast.LENGTH_LONG); t.show(); - } + } } private void onSynchronizeFolderOperationFinish( @@ -762,7 +768,28 @@ public class FileActivity extends ActionBarActivity t.show(); } } - + + private void onSynchronizeFileOperationFinish(SynchronizeFileOperation operation, + RemoteOperationResult result) { + dismissLoadingDialog(); + OCFile syncedFile = operation.getLocalFile(); + if (!result.isSuccess()) { + if (result.getCode() == ResultCode.SYNC_CONFLICT) { + Intent i = new Intent(this, ConflictsResolveActivity.class); + i.putExtra(ConflictsResolveActivity.EXTRA_FILE, syncedFile); + i.putExtra(ConflictsResolveActivity.EXTRA_ACCOUNT, getAccount()); + startActivity(i); + + } + } else { + if (!operation.transferWasRequested()) { + Toast msg = Toast.makeText(this, ErrorMessageAdapter.getErrorCauseMessage(result, + operation, getResources()), Toast.LENGTH_LONG); + msg.show(); + } + } + } + protected void updateFileFromDB(){ OCFile file = getFile(); if (file != null) { @@ -770,9 +797,10 @@ public class FileActivity extends ActionBarActivity setFile(file); } } - + + /** - * Show loading dialog + * Show loading dialog */ public void showLoadingDialog() { // Construct dialog @@ -780,10 +808,10 @@ public class FileActivity extends ActionBarActivity FragmentManager fm = getSupportFragmentManager(); FragmentTransaction ft = fm.beginTransaction(); loading.show(ft, DIALOG_WAIT_TAG); - + } - + /** * Dismiss loading dialog */ @@ -795,7 +823,7 @@ public class FileActivity extends ActionBarActivity } } - + private void doOnResumeAndBound() { mOperationsServiceBinder.addOperationListener(FileActivity.this, mHandler); long waitingForOpId = mFileOperationsHelper.getOpIdWaitingFor(); @@ -809,8 +837,8 @@ public class FileActivity extends ActionBarActivity } - /** - * Implements callback methods for service binding. Passed as a parameter to { + /** + * Implements callback methods for service binding. Passed as a parameter to { */ private class OperationsServiceConnection implements ServiceConnection { @@ -828,7 +856,7 @@ public class FileActivity extends ActionBarActivity return; } } - + @Override public void onServiceDisconnected(ComponentName component) { diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 6840f91c..cfeb5415 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -1457,6 +1457,7 @@ public class FileDisplayActivity extends HookActivity operation, getResources()), Toast.LENGTH_LONG); msg.show(); } + invalidateOptionsMenu(); } } diff --git a/src/com/owncloud/android/ui/activity/PassCodeActivity.java b/src/com/owncloud/android/ui/activity/PassCodeActivity.java index b781e28a..09a96307 100644 --- a/src/com/owncloud/android/ui/activity/PassCodeActivity.java +++ b/src/com/owncloud/android/ui/activity/PassCodeActivity.java @@ -61,7 +61,9 @@ public class PassCodeActivity extends ActionBarActivity { private EditText[] mPassCodeEditTexts = new EditText[4]; private String [] mPassCodeDigits = {"","","",""}; + private static String KEY_PASSCODE_DIGITS = "PASSCODE_DIGITS"; private boolean mConfirmingPassCode = false; + private static String KEY_CONFIRMING_PASSCODE = "CONFIRMING_PASSCODE"; private boolean mBChange = true; // to control that only one blocks jump @@ -96,13 +98,22 @@ public class PassCodeActivity extends ActionBarActivity { setCancelButtonEnabled(false); // no option to cancel } else if (ACTION_ENABLE.equals(getIntent().getAction())) { - /// pass code preference has just been activated in Preferences; - // will receive and confirm pass code value - mPassCodeHdr.setText(R.string.pass_code_configure_your_pass_code); - //mPassCodeHdr.setText(R.string.pass_code_enter_pass_code); - // TODO choose a header, check iOS - mPassCodeHdrExplanation.setVisibility(View.VISIBLE); - setCancelButtonEnabled(true); + if (savedInstanceState != null) { + mConfirmingPassCode = savedInstanceState.getBoolean(PassCodeActivity.KEY_CONFIRMING_PASSCODE); + mPassCodeDigits = savedInstanceState.getStringArray(PassCodeActivity.KEY_PASSCODE_DIGITS); + } + if(mConfirmingPassCode){ + //the app was in the passcodeconfirmation + requestPassCodeConfirmation(); + }else{ + /// pass code preference has just been activated in Preferences; + // will receive and confirm pass code value + mPassCodeHdr.setText(R.string.pass_code_configure_your_pass_code); + //mPassCodeHdr.setText(R.string.pass_code_enter_pass_code); + // TODO choose a header, check iOS + mPassCodeHdrExplanation.setVisibility(View.VISIBLE); + setCancelButtonEnabled(true); + } } else if (ACTION_DISABLE.equals(getIntent().getAction())) { /// pass code preference has just been disabled in Preferences; @@ -455,6 +466,13 @@ public class PassCodeActivity extends ActionBarActivity { finish(); } + @Override + public void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + outState.putBoolean(PassCodeActivity.KEY_CONFIRMING_PASSCODE, mConfirmingPassCode); + outState.putStringArray(PassCodeActivity.KEY_PASSCODE_DIGITS, mPassCodeDigits); + } + private class PassCodeDigitTextWatcher implements TextWatcher { diff --git a/src/com/owncloud/android/ui/adapter/FileListListAdapter.java b/src/com/owncloud/android/ui/adapter/FileListListAdapter.java index c6ea0344..33fa57fd 100644 --- a/src/com/owncloud/android/ui/adapter/FileListListAdapter.java +++ b/src/com/owncloud/android/ui/adapter/FileListListAdapter.java @@ -268,15 +268,14 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter { } // share with me icon - if (!file.isFolder()) { - ImageView sharedWithMeIconV = (ImageView) - view.findViewById(R.id.sharedWithMeIcon); - sharedWithMeIconV.bringToFront(); - if (checkIfFileIsSharedWithMe(file)) { - sharedWithMeIconV.setVisibility(View.VISIBLE); - } else { - sharedWithMeIconV.setVisibility(View.GONE); - } + ImageView sharedWithMeIconV = (ImageView) + view.findViewById(R.id.sharedWithMeIcon); + sharedWithMeIconV.bringToFront(); + if (checkIfFileIsSharedWithMe(file) && + (!file.isFolder() || !mGridMode)) { + sharedWithMeIconV.setVisibility(View.VISIBLE); + } else { + sharedWithMeIconV.setVisibility(View.GONE); } break; @@ -286,7 +285,7 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter { // this if-else is needed even though favorite icon is visible by default // because android reuses views in listview - if (!file.keepInSync()) { + if (!file.isFavorite()) { view.findViewById(R.id.favoriteIcon).setVisibility(View.GONE); } else { view.findViewById(R.id.favoriteIcon).setVisibility(View.VISIBLE); diff --git a/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java b/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java index 3045b278..72f40f97 100644 --- a/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java +++ b/src/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java @@ -110,21 +110,21 @@ implements ConfirmationDialogFragmentListener { FileDataStorageManager storageManager = cg.getStorageManager(); - boolean containsKeepInSync = false; + boolean containsFavorite = false; if (mTargetFile.isFolder()) { // TODO Enable when "On Device" is recovered ? Vector files = storageManager.getFolderContent(mTargetFile/*, false*/); for(OCFile file: files) { - containsKeepInSync = file.keepInSync() || containsKeepInSync; + containsFavorite = file.isFavorite() || containsFavorite; - if (containsKeepInSync) + if (containsFavorite) break; } } - // Remove etag for parent, if file is a keep_in_sync - // or is a folder and contains keep_in_sync - if (mTargetFile.keepInSync() || containsKeepInSync) { + // Remove etag for parent, if file is a favorite + // or is a folder and contains favorite + if (mTargetFile.isFavorite() || containsFavorite) { OCFile folder = null; if (mTargetFile.isFolder()) { folder = mTargetFile; diff --git a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java index 4f099e49..9916a3d0 100644 --- a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java +++ b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java @@ -131,7 +131,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener mView = inflater.inflate(mLayout, null); if (mLayout == R.layout.file_details_fragment) { - mView.findViewById(R.id.fdKeepInSync).setOnClickListener(this); + mView.findViewById(R.id.fdFavorite).setOnClickListener(this); ProgressBar progressBar = (ProgressBar)mView.findViewById(R.id.fdProgressBar); mProgressListener = new ProgressListener(progressBar); mView.findViewById(R.id.fdCancelBtn).setOnClickListener(this); @@ -259,6 +259,14 @@ public class FileDetailFragment extends FileFragment implements OnClickListener } return true; } + case R.id.action_favorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(), true); + return true; + } + case R.id.action_unfavorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(), false); + return true; + } default: return false; } @@ -267,8 +275,9 @@ public class FileDetailFragment extends FileFragment implements OnClickListener @Override public void onClick(View v) { switch (v.getId()) { - case R.id.fdKeepInSync: { - toggleKeepInSync(); + case R.id.fdFavorite: { + CheckBox cb = (CheckBox) getView().findViewById(R.id.fdFavorite); + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(),cb.isChecked()); break; } case R.id.fdCancelBtn: { @@ -279,27 +288,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener Log_OC.e(TAG, "Incorrect view clicked!"); } } - - - private void toggleKeepInSync() { - CheckBox cb = (CheckBox) getView().findViewById(R.id.fdKeepInSync); - OCFile file = getFile(); - file.setKeepInSync(cb.isChecked()); - mContainerActivity.getStorageManager().saveFile(file); - - /// register the OCFile instance in the observer service to monitor local updates - Intent observedFileIntent = FileObserverService.makeObservedFileIntent( - getActivity(), - file, - mAccount, - cb.isChecked()); - getActivity().startService(observedFileIntent); - - /// immediate content synchronization - if (file.keepInSync()) { - mContainerActivity.getFileOperationsHelper().syncFile(getFile()); - } - } + /** * Check if the fragment was created with an empty layout. An empty fragment can't show file details, must be replaced. @@ -348,8 +337,8 @@ public class FileDetailFragment extends FileFragment implements OnClickListener setTimeModified(file.getModificationTimestamp()); - CheckBox cb = (CheckBox)getView().findViewById(R.id.fdKeepInSync); - cb.setChecked(file.keepInSync()); + CheckBox cb = (CheckBox)getView().findViewById(R.id.fdFavorite); + cb.setChecked(file.isFavorite()); // configure UI for depending upon local state of the file FileDownloaderBinder downloaderBinder = mContainerActivity.getFileDownloaderBinder(); @@ -437,7 +426,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener private void setButtonsForTransferring() { if (!isEmpty()) { // let's protect the user from himself ;) - getView().findViewById(R.id.fdKeepInSync).setEnabled(false); + getView().findViewById(R.id.fdFavorite).setEnabled(false); // show the progress bar for the transfer getView().findViewById(R.id.fdProgressBlock).setVisibility(View.VISIBLE); @@ -459,7 +448,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener */ private void setButtonsForDown() { if (!isEmpty()) { - getView().findViewById(R.id.fdKeepInSync).setEnabled(true); + getView().findViewById(R.id.fdFavorite).setEnabled(true); // hides the progress bar getView().findViewById(R.id.fdProgressBlock).setVisibility(View.GONE); @@ -473,7 +462,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener */ private void setButtonsForRemote() { if (!isEmpty()) { - getView().findViewById(R.id.fdKeepInSync).setEnabled(true); + getView().findViewById(R.id.fdFavorite).setEnabled(true); // hides the progress bar getView().findViewById(R.id.fdProgressBlock).setVisibility(View.GONE); diff --git a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java index 424b0d59..47d99925 100644 --- a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java @@ -341,6 +341,14 @@ public class OCFileListFragment extends ExtendedListFragment { getActivity().startActivityForResult(action, FileDisplayActivity.ACTION_MOVE_FILES); return true; } + case R.id.action_favorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(mTargetFile, true); + return true; + } + case R.id.action_unfavorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(mTargetFile, false); + return true; + } default: return super.onContextItemSelected(item); } @@ -492,8 +500,7 @@ public class OCFileListFragment extends ExtendedListFragment { public void sortBySize(boolean descending) { mAdapter.setSortOrder(FileStorageUtils.SORT_SIZE, descending); - } - - + } + } diff --git a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java index 2b0d96ce..b2d0c8cf 100644 --- a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java +++ b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java @@ -55,6 +55,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCo import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.operations.CreateShareOperation; import com.owncloud.android.operations.RemoveFileOperation; +import com.owncloud.android.operations.SynchronizeFileOperation; import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.ui.activity.FileActivity; import com.owncloud.android.ui.activity.FileDisplayActivity; @@ -234,6 +235,9 @@ public class PreviewImageActivity extends FileActivity implements } else if (operation instanceof RemoveFileOperation) { finish(); + } else if (operation instanceof SynchronizeFileOperation) { + onSynchronizeFileOperationFinish((SynchronizeFileOperation) operation, result); + } } @@ -263,6 +267,14 @@ public class PreviewImageActivity extends FileActivity implements } } + private void onSynchronizeFileOperationFinish(SynchronizeFileOperation operation, + RemoteOperationResult result) { + if (result.isSuccess()) { + invalidateOptionsMenu(); + } + + } + @Override protected ServiceConnection newTransferenceServiceConnection() { return new PreviewImageServiceConnection(); diff --git a/src/com/owncloud/android/ui/preview/PreviewImageFragment.java b/src/com/owncloud/android/ui/preview/PreviewImageFragment.java index 7950ec98..7ca1cfbb 100644 --- a/src/com/owncloud/android/ui/preview/PreviewImageFragment.java +++ b/src/com/owncloud/android/ui/preview/PreviewImageFragment.java @@ -306,7 +306,14 @@ public class PreviewImageFragment extends FileFragment { mContainerActivity.getFileOperationsHelper().syncFile(getFile()); return true; } - + case R.id.action_favorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(), true); + return true; + } + case R.id.action_unfavorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(), false); + return true; + } default: return false; } diff --git a/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java b/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java index c5883cfc..d87b82cb 100644 --- a/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java +++ b/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java @@ -341,7 +341,14 @@ public class PreviewMediaFragment extends FileFragment implements mContainerActivity.getFileOperationsHelper().syncFile(getFile()); return true; } - + case R.id.action_favorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(), true); + return true; + } + case R.id.action_unfavorite_file:{ + mContainerActivity.getFileOperationsHelper().toggleFavorite(getFile(), false); + return true; + } default: return false; }