From 86939ef8554198a892015bb54510b686c17eadf3 Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Fri, 1 Oct 2021 03:37:25 +0530 Subject: [PATCH 01/29] #2712 removed duplicate strings --- custom/src/main/res/values-ar/strings.xml | 1 - custom/src/main/res/values-ast/strings.xml | 1 - custom/src/main/res/values-b+roa+tara/strings.xml | 1 - custom/src/main/res/values-b+tg+Cyrl/strings.xml | 1 - custom/src/main/res/values-bn/strings.xml | 1 - custom/src/main/res/values-ckb/strings.xml | 1 - custom/src/main/res/values-cs/strings.xml | 1 - custom/src/main/res/values-de/strings.xml | 1 - custom/src/main/res/values-diq/strings.xml | 1 - custom/src/main/res/values-eo/strings.xml | 1 - custom/src/main/res/values-es/strings.xml | 1 - custom/src/main/res/values-eu/strings.xml | 1 - custom/src/main/res/values-fa/strings.xml | 1 - custom/src/main/res/values-fi/strings.xml | 1 - custom/src/main/res/values-fit/strings.xml | 1 - custom/src/main/res/values-fr/strings.xml | 1 - custom/src/main/res/values-gsw/strings.xml | 1 - custom/src/main/res/values-hy/strings.xml | 1 - custom/src/main/res/values-in/strings.xml | 1 - custom/src/main/res/values-it/strings.xml | 1 - custom/src/main/res/values-iw/strings.xml | 1 - custom/src/main/res/values-ko/strings.xml | 1 - custom/src/main/res/values-ku/strings.xml | 1 - custom/src/main/res/values-lb/strings.xml | 1 - custom/src/main/res/values-mk/strings.xml | 1 - custom/src/main/res/values-ml/strings.xml | 1 - custom/src/main/res/values-ms/strings.xml | 1 - custom/src/main/res/values-ne/strings.xml | 1 - custom/src/main/res/values-nl/strings.xml | 1 - custom/src/main/res/values-pl/strings.xml | 1 - custom/src/main/res/values-pt-rBR/strings.xml | 1 - custom/src/main/res/values-pt/strings.xml | 1 - custom/src/main/res/values-qq/strings.xml | 1 - custom/src/main/res/values-ro/strings.xml | 1 - custom/src/main/res/values-ru/strings.xml | 1 - custom/src/main/res/values-sc/strings.xml | 1 - custom/src/main/res/values-sk/strings.xml | 1 - custom/src/main/res/values-skr/strings.xml | 1 - custom/src/main/res/values-smn/strings.xml | 1 - custom/src/main/res/values-sms/strings.xml | 1 - custom/src/main/res/values-sv/strings.xml | 1 - custom/src/main/res/values-ta/strings.xml | 1 - custom/src/main/res/values-tr/strings.xml | 1 - custom/src/main/res/values-uk/strings.xml | 1 - custom/src/main/res/values-zgh/strings.xml | 1 - custom/src/main/res/values-zh-rTW/strings.xml | 1 - custom/src/main/res/values-zh/strings.xml | 1 - custom/src/main/res/values/strings.xml | 1 - 48 files changed, 48 deletions(-) diff --git a/custom/src/main/res/values-ar/strings.xml b/custom/src/main/res/values-ar/strings.xml index 3a8ec2e1a..024717aef 100644 --- a/custom/src/main/res/values-ar/strings.xml +++ b/custom/src/main/res/values-ar/strings.xml @@ -4,6 +4,5 @@ --> إعادة المحاولة - تنزيل تثبيت غير صالح؛ يُرجَى تنزيل Zim.\nتأكد من تشغيل واي فاي وأن لديك مساحة تخزين كافية diff --git a/custom/src/main/res/values-ast/strings.xml b/custom/src/main/res/values-ast/strings.xml index 5e444027d..f8de18bc1 100644 --- a/custom/src/main/res/values-ast/strings.xml +++ b/custom/src/main/res/values-ast/strings.xml @@ -4,6 +4,5 @@ --> Tentar nuevamente - Descargar Instalación inválida. Descarga Zim.\n Comprueba que la WiFi ta activada y que tienes espaciu bastante diff --git a/custom/src/main/res/values-b+roa+tara/strings.xml b/custom/src/main/res/values-b+roa+tara/strings.xml index 91d735ebb..956b1f3ff 100644 --- a/custom/src/main/res/values-b+roa+tara/strings.xml +++ b/custom/src/main/res/values-b+roa+tara/strings.xml @@ -4,6 +4,5 @@ --> Pruève arrete - Scareche Installazione non valide. Pe piacere scareche Zim.\n Assecurate ca \'u WiFi ste sus e ca tìne abbastanza spazie diff --git a/custom/src/main/res/values-b+tg+Cyrl/strings.xml b/custom/src/main/res/values-b+tg+Cyrl/strings.xml index 215163f90..fdfbe4924 100644 --- a/custom/src/main/res/values-b+tg+Cyrl/strings.xml +++ b/custom/src/main/res/values-b+tg+Cyrl/strings.xml @@ -3,5 +3,4 @@ * ToJack --> - Боркунӣ diff --git a/custom/src/main/res/values-bn/strings.xml b/custom/src/main/res/values-bn/strings.xml index 2c4f313a2..0f138d61e 100644 --- a/custom/src/main/res/values-bn/strings.xml +++ b/custom/src/main/res/values-bn/strings.xml @@ -3,5 +3,4 @@ * Yahya --> - ডাউনলোড diff --git a/custom/src/main/res/values-ckb/strings.xml b/custom/src/main/res/values-ckb/strings.xml index 1ddb15ab2..80c228644 100644 --- a/custom/src/main/res/values-ckb/strings.xml +++ b/custom/src/main/res/values-ckb/strings.xml @@ -4,5 +4,4 @@ --> ھەوڵداناوە - داگرتن diff --git a/custom/src/main/res/values-cs/strings.xml b/custom/src/main/res/values-cs/strings.xml index b896b76b9..8dfb3b148 100644 --- a/custom/src/main/res/values-cs/strings.xml +++ b/custom/src/main/res/values-cs/strings.xml @@ -5,6 +5,5 @@ --> Zkusit znovu - Stáhnout Neplatná instalace. Stáhněte si prosím Zim.\nZkontrolujte, zda je zapnuto WiFi a zda máte v úložišti dostatek místa diff --git a/custom/src/main/res/values-de/strings.xml b/custom/src/main/res/values-de/strings.xml index 8970e9aea..5baaa824f 100644 --- a/custom/src/main/res/values-de/strings.xml +++ b/custom/src/main/res/values-de/strings.xml @@ -4,6 +4,5 @@ --> Erneut versuchen - Herunterladen Ungültige Installation. Bitte ZIM herunterladen.\nStellen Sie sicher, das Wi-Fi an ist und sie genügend Speicherplatz haben diff --git a/custom/src/main/res/values-diq/strings.xml b/custom/src/main/res/values-diq/strings.xml index 384ac0d25..914fdb294 100644 --- a/custom/src/main/res/values-diq/strings.xml +++ b/custom/src/main/res/values-diq/strings.xml @@ -5,6 +5,5 @@ --> Anciya bıcerrebne - Biya war Nêraverde saz kerdış. Kerem kerê Zimvi ronê.  WiFi u hafızaya telefoni kontrol kerê diff --git a/custom/src/main/res/values-eo/strings.xml b/custom/src/main/res/values-eo/strings.xml index 9f1445f9c..549ebc2fe 100644 --- a/custom/src/main/res/values-eo/strings.xml +++ b/custom/src/main/res/values-eo/strings.xml @@ -3,5 +3,4 @@ * Jakub Fabijan --> - Elŝuti diff --git a/custom/src/main/res/values-es/strings.xml b/custom/src/main/res/values-es/strings.xml index 00b0b2bee..0d6da5c4c 100644 --- a/custom/src/main/res/values-es/strings.xml +++ b/custom/src/main/res/values-es/strings.xml @@ -4,5 +4,4 @@ --> Reintentar - Descargar diff --git a/custom/src/main/res/values-eu/strings.xml b/custom/src/main/res/values-eu/strings.xml index 5299e9d9f..6575bcae5 100644 --- a/custom/src/main/res/values-eu/strings.xml +++ b/custom/src/main/res/values-eu/strings.xml @@ -3,5 +3,4 @@ * An13sa --> - Jaitsi diff --git a/custom/src/main/res/values-fa/strings.xml b/custom/src/main/res/values-fa/strings.xml index 5ebe7e86a..ece1c6529 100644 --- a/custom/src/main/res/values-fa/strings.xml +++ b/custom/src/main/res/values-fa/strings.xml @@ -4,5 +4,4 @@ --> تلاش دوباره - بارگیری diff --git a/custom/src/main/res/values-fi/strings.xml b/custom/src/main/res/values-fi/strings.xml index e47745325..689618dcd 100644 --- a/custom/src/main/res/values-fi/strings.xml +++ b/custom/src/main/res/values-fi/strings.xml @@ -4,5 +4,4 @@ --> Yritä uudelleen - Lataa diff --git a/custom/src/main/res/values-fit/strings.xml b/custom/src/main/res/values-fit/strings.xml index 9eeb5cc90..548b4b4a1 100644 --- a/custom/src/main/res/values-fit/strings.xml +++ b/custom/src/main/res/values-fit/strings.xml @@ -4,5 +4,4 @@ --> Yritä uuesti - Lattaa diff --git a/custom/src/main/res/values-fr/strings.xml b/custom/src/main/res/values-fr/strings.xml index b9985920b..fc32942e0 100644 --- a/custom/src/main/res/values-fr/strings.xml +++ b/custom/src/main/res/values-fr/strings.xml @@ -5,6 +5,5 @@ --> Réessayer - Télécharger Installation non valide. Veuillez télécharger Zim.\n Assurez-vous que le Wi-Fi est actif et que vous disposez d’assez d\'espace de stockage. diff --git a/custom/src/main/res/values-gsw/strings.xml b/custom/src/main/res/values-gsw/strings.xml index 81c66cfff..0a24e5127 100644 --- a/custom/src/main/res/values-gsw/strings.xml +++ b/custom/src/main/res/values-gsw/strings.xml @@ -4,5 +4,4 @@ --> Nomal probierä - Abelade diff --git a/custom/src/main/res/values-hy/strings.xml b/custom/src/main/res/values-hy/strings.xml index 2433be7e7..7236491a5 100644 --- a/custom/src/main/res/values-hy/strings.xml +++ b/custom/src/main/res/values-hy/strings.xml @@ -4,5 +4,4 @@ --> Կրկին փորձել - Ներբեռնել diff --git a/custom/src/main/res/values-in/strings.xml b/custom/src/main/res/values-in/strings.xml index d76a0ae9f..b82f36c2f 100644 --- a/custom/src/main/res/values-in/strings.xml +++ b/custom/src/main/res/values-in/strings.xml @@ -4,6 +4,5 @@ --> Coba lagi - Unduh Instalasi tidak berlaku. Silakan unduh Zim.\nPastikan Wifi menyala dan Anda memiliki cukup tempat penyimpanan data diff --git a/custom/src/main/res/values-it/strings.xml b/custom/src/main/res/values-it/strings.xml index 5f7408baa..86dad33ab 100644 --- a/custom/src/main/res/values-it/strings.xml +++ b/custom/src/main/res/values-it/strings.xml @@ -4,5 +4,4 @@ --> Riprova - Scarica diff --git a/custom/src/main/res/values-iw/strings.xml b/custom/src/main/res/values-iw/strings.xml index c126e45ef..4fe1e38ab 100644 --- a/custom/src/main/res/values-iw/strings.xml +++ b/custom/src/main/res/values-iw/strings.xml @@ -4,6 +4,5 @@ --> לנסות שוב - הורדה התקנה בלתי־תקינה. נא להוריד Zim.\nיש לוודא שמופעל ויי־פיי ושיש לך מספיק נפח אחסון diff --git a/custom/src/main/res/values-ko/strings.xml b/custom/src/main/res/values-ko/strings.xml index d38fd4a52..7afb252c9 100644 --- a/custom/src/main/res/values-ko/strings.xml +++ b/custom/src/main/res/values-ko/strings.xml @@ -4,6 +4,5 @@ --> 재시도 - 다운로드 유효하지 않은 설치입니다. Zim을 다운로드 해주세요.\nWIFI가 켜져있는지 확인해주시고, 용량이 충분한지 확인하십시오. diff --git a/custom/src/main/res/values-ku/strings.xml b/custom/src/main/res/values-ku/strings.xml index dfdc84091..35ca5a4f9 100644 --- a/custom/src/main/res/values-ku/strings.xml +++ b/custom/src/main/res/values-ku/strings.xml @@ -4,6 +4,5 @@ --> Dîsa hewl bide - Daxîne Sazkirina Nederbasdar. Ji Kerema Xwe Zim-ê Daxîne.\n Jê piştrast be ku WîFî vekirî ye û bi qasî têra xwe cih heye diff --git a/custom/src/main/res/values-lb/strings.xml b/custom/src/main/res/values-lb/strings.xml index 6c070d0ca..6cfa6d485 100644 --- a/custom/src/main/res/values-lb/strings.xml +++ b/custom/src/main/res/values-lb/strings.xml @@ -4,5 +4,4 @@ --> Nach eng Kéier probéieren - Eroflueden diff --git a/custom/src/main/res/values-mk/strings.xml b/custom/src/main/res/values-mk/strings.xml index 34993c1f6..9969f2239 100644 --- a/custom/src/main/res/values-mk/strings.xml +++ b/custom/src/main/res/values-mk/strings.xml @@ -4,6 +4,5 @@ --> Пробај пак - Преземи Неважечка воспоставка. Преземете ZIM.\n Проверете дали ви е вклучена безжичната врска и дали имате доволно складиштен простор diff --git a/custom/src/main/res/values-ml/strings.xml b/custom/src/main/res/values-ml/strings.xml index ba6a2e6d6..4aae737dd 100644 --- a/custom/src/main/res/values-ml/strings.xml +++ b/custom/src/main/res/values-ml/strings.xml @@ -4,5 +4,4 @@ --> വീണ്ടും ശ്രമിക്കുക - ഡൗൺലോഡ് ചെയ്യുക diff --git a/custom/src/main/res/values-ms/strings.xml b/custom/src/main/res/values-ms/strings.xml index 00a23bbfc..8f28e6982 100644 --- a/custom/src/main/res/values-ms/strings.xml +++ b/custom/src/main/res/values-ms/strings.xml @@ -4,5 +4,4 @@ --> Cuba lagi - Muat turun diff --git a/custom/src/main/res/values-ne/strings.xml b/custom/src/main/res/values-ne/strings.xml index a9f893b58..27325d513 100644 --- a/custom/src/main/res/values-ne/strings.xml +++ b/custom/src/main/res/values-ne/strings.xml @@ -4,5 +4,4 @@ --> पुनः प्रयास गर्नुहोस् - डाउनलोड गरिएकाे diff --git a/custom/src/main/res/values-nl/strings.xml b/custom/src/main/res/values-nl/strings.xml index ae35f8e7d..cddf3e6be 100644 --- a/custom/src/main/res/values-nl/strings.xml +++ b/custom/src/main/res/values-nl/strings.xml @@ -4,5 +4,4 @@ --> Opnieuw proberen - Downloaden diff --git a/custom/src/main/res/values-pl/strings.xml b/custom/src/main/res/values-pl/strings.xml index 2da2a9784..264e1e7e5 100644 --- a/custom/src/main/res/values-pl/strings.xml +++ b/custom/src/main/res/values-pl/strings.xml @@ -4,6 +4,5 @@ --> Ponów próbę - Pobierz Nieprawidłowa instalacja. Proszę pobrać Zim.\nUpewnij się, że WiFi jest włączone i masz wystarczającą ilość miejsca diff --git a/custom/src/main/res/values-pt-rBR/strings.xml b/custom/src/main/res/values-pt-rBR/strings.xml index d8b62cecd..8f5858c2c 100644 --- a/custom/src/main/res/values-pt-rBR/strings.xml +++ b/custom/src/main/res/values-pt-rBR/strings.xml @@ -5,6 +5,5 @@ --> Atualizar - Baixar Instalação inválida. Faça o download do Zim.\n  Verifique se o Wi-Fi está ativado e você tem armazenamento suficiente diff --git a/custom/src/main/res/values-pt/strings.xml b/custom/src/main/res/values-pt/strings.xml index d9529c2fe..46d4f5a48 100644 --- a/custom/src/main/res/values-pt/strings.xml +++ b/custom/src/main/res/values-pt/strings.xml @@ -5,6 +5,5 @@ --> Repetir - Transferir Instalação inválida. Descarregue o Zim, por favor.\n Certifique-se que a Wi-Fi está ligada e que tem espaço suficiente diff --git a/custom/src/main/res/values-qq/strings.xml b/custom/src/main/res/values-qq/strings.xml index d9cdfe621..b3d229d76 100644 --- a/custom/src/main/res/values-qq/strings.xml +++ b/custom/src/main/res/values-qq/strings.xml @@ -3,5 +3,4 @@ * Robby --> - The title of the fragment/place where books are downloaded. diff --git a/custom/src/main/res/values-ro/strings.xml b/custom/src/main/res/values-ro/strings.xml index 122a301a2..841392278 100644 --- a/custom/src/main/res/values-ro/strings.xml +++ b/custom/src/main/res/values-ro/strings.xml @@ -4,6 +4,5 @@ --> Reîncercați - Descarcă Instalare nevalidă. Vă rugăm să descărcați Zim.\n Asigurați-vă că WiFi este activ și aveți suficient spațiu de stocare diff --git a/custom/src/main/res/values-ru/strings.xml b/custom/src/main/res/values-ru/strings.xml index 1a2933127..b4cf17702 100644 --- a/custom/src/main/res/values-ru/strings.xml +++ b/custom/src/main/res/values-ru/strings.xml @@ -4,6 +4,5 @@ --> Повторить - Скачать Проблема с установкой. Пожалуйста скачайте Zim.\n Проверьте, что WiFi включён и в хранилище достаточно места diff --git a/custom/src/main/res/values-sc/strings.xml b/custom/src/main/res/values-sc/strings.xml index 0eabe9c5e..76bdf4224 100644 --- a/custom/src/main/res/values-sc/strings.xml +++ b/custom/src/main/res/values-sc/strings.xml @@ -4,6 +4,5 @@ --> Torra a proare - Iscàrriga Installatzione non vàlida. Pro praghere iscàrriga unu Zim.\n Assegura·ti chi su WiFi siat allutu e de tènnere memòria bastante diff --git a/custom/src/main/res/values-sk/strings.xml b/custom/src/main/res/values-sk/strings.xml index c10f8e032..6308099f3 100644 --- a/custom/src/main/res/values-sk/strings.xml +++ b/custom/src/main/res/values-sk/strings.xml @@ -3,5 +3,4 @@ * Yardom78 --> - Stiahnuť diff --git a/custom/src/main/res/values-skr/strings.xml b/custom/src/main/res/values-skr/strings.xml index 6b7fce612..40a024b6f 100644 --- a/custom/src/main/res/values-skr/strings.xml +++ b/custom/src/main/res/values-skr/strings.xml @@ -4,5 +4,4 @@ --> ولدا کوشش کرو - ڈاؤن لوڈ diff --git a/custom/src/main/res/values-smn/strings.xml b/custom/src/main/res/values-smn/strings.xml index 614835350..6fa7c3b54 100644 --- a/custom/src/main/res/values-smn/strings.xml +++ b/custom/src/main/res/values-smn/strings.xml @@ -3,5 +3,4 @@ * Yupik --> - Luođii diff --git a/custom/src/main/res/values-sms/strings.xml b/custom/src/main/res/values-sms/strings.xml index 995674f4c..6fa7c3b54 100644 --- a/custom/src/main/res/values-sms/strings.xml +++ b/custom/src/main/res/values-sms/strings.xml @@ -3,5 +3,4 @@ * Yupik --> - Laadd diff --git a/custom/src/main/res/values-sv/strings.xml b/custom/src/main/res/values-sv/strings.xml index 2e3d389e8..006788925 100644 --- a/custom/src/main/res/values-sv/strings.xml +++ b/custom/src/main/res/values-sv/strings.xml @@ -4,6 +4,5 @@ --> Försök igen - Ladda ned Ogiltig installation. Var god ladda ned Zim.\n Se till att WiFi är aktiverat och att du har tillräckligt mycket lagringsutrymme diff --git a/custom/src/main/res/values-ta/strings.xml b/custom/src/main/res/values-ta/strings.xml index 693e83d99..d24188dbe 100644 --- a/custom/src/main/res/values-ta/strings.xml +++ b/custom/src/main/res/values-ta/strings.xml @@ -4,6 +4,5 @@ --> மறு முயற்சி செய் - பதிவிறக்கு தவறான நிறுவல். தயவு செய்து Zim கோப்பினை பதிவிறக்கவும்.\nவைஃபை இயக்கப்பட்டிருப்பதையும் உங்களிடம் போதுமான சேமிப்பு உள்ளதையும் உறுதி செய்யவும் diff --git a/custom/src/main/res/values-tr/strings.xml b/custom/src/main/res/values-tr/strings.xml index 3033d12f8..9fb479dbe 100644 --- a/custom/src/main/res/values-tr/strings.xml +++ b/custom/src/main/res/values-tr/strings.xml @@ -4,6 +4,5 @@ --> Tekrar dene - İndir Geçersiz Kurulum Lütfen Zim\'i indirin.\n  WiFi\'nin açık olduğundan ve yeterli depolama alanınız olduğundan emin olun diff --git a/custom/src/main/res/values-uk/strings.xml b/custom/src/main/res/values-uk/strings.xml index 4d7a66370..4e352c486 100644 --- a/custom/src/main/res/values-uk/strings.xml +++ b/custom/src/main/res/values-uk/strings.xml @@ -4,6 +4,5 @@ --> Повторити - Завантажити Невдале встановлення. Будь ласка завантажте Zim.\nТакож впевніться, що WiFi підключений і ви маєте достатньо місця на пристрої diff --git a/custom/src/main/res/values-zgh/strings.xml b/custom/src/main/res/values-zgh/strings.xml index 69648effe..fc38a3907 100644 --- a/custom/src/main/res/values-zgh/strings.xml +++ b/custom/src/main/res/values-zgh/strings.xml @@ -5,5 +5,4 @@ --> ⴰⵔⵎ ⴷⴰⵖ - ⴰⴳⴰⵎ diff --git a/custom/src/main/res/values-zh-rTW/strings.xml b/custom/src/main/res/values-zh-rTW/strings.xml index b2b17fb23..3e8e5ff8b 100644 --- a/custom/src/main/res/values-zh-rTW/strings.xml +++ b/custom/src/main/res/values-zh-rTW/strings.xml @@ -4,6 +4,5 @@ --> 重試 - 下載 安裝無效,請下載 Zim。\n 啟動 WiFi 並確認有足夠儲存空間 diff --git a/custom/src/main/res/values-zh/strings.xml b/custom/src/main/res/values-zh/strings.xml index 27d6604ef..b2b7ff0ba 100644 --- a/custom/src/main/res/values-zh/strings.xml +++ b/custom/src/main/res/values-zh/strings.xml @@ -3,5 +3,4 @@ * LClightcat --> - 下载 diff --git a/custom/src/main/res/values/strings.xml b/custom/src/main/res/values/strings.xml index c7a41f9f7..c80d791bc 100644 --- a/custom/src/main/res/values/strings.xml +++ b/custom/src/main/res/values/strings.xml @@ -2,6 +2,5 @@ Retry - Download Invalid Install. Please Download Zim.\n Ensure WiFi is on and you have enough storage From e1ef66e9c526f505f0268d5e2ec0b6a0391dc3c7 Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Wed, 20 Oct 2021 16:39:10 +0530 Subject: [PATCH 02/29] #2717 converted Matcher.java to Kotlin --- .../kiwix/kiwixmobile/testutils/Matcher.kt | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt diff --git a/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt b/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt new file mode 100644 index 000000000..69a0160e8 --- /dev/null +++ b/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt @@ -0,0 +1,45 @@ +/* + * Kiwix Android + * Copyright (c) 2019 Kiwix + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +package org.kiwix.kiwixmobile.testutils + +import android.view.View +import android.view.ViewGroup +import org.hamcrest.Description +import org.hamcrest.Matcher +import org.hamcrest.TypeSafeMatcher + +object Matcher { + fun childAtPosition( + parentMatcher: Matcher, + position: Int + ): Matcher { + return object : TypeSafeMatcher() { + override fun describeTo(description: Description) { + description.appendText("Child at position $position in parent ") + parentMatcher.describeTo(description) + } + + public override fun matchesSafely(view: View): Boolean { + val parent = view.parent + return (parent is ViewGroup && parentMatcher.matches(parent) && + view == parent.getChildAt(position)) + } + } + } +} From 312c61e99e43ebecaeaafad13fc4c1de936923ba Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Tue, 26 Oct 2021 01:35:49 +0530 Subject: [PATCH 03/29] added api 30 to both coverage and instrumentation test --- .github/workflows/coverage.yml | 2 +- .github/workflows/nightly.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index f9e09cc3c..76262912c 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -15,7 +15,7 @@ jobs: coverageReport: strategy: matrix: - api-level: [21, 21] + api-level: [21, 21, 30] fail-fast: false runs-on: macOS-latest steps: diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 1bea36eb9..5b5d76bce 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -10,7 +10,7 @@ jobs: instrumentation_tests: strategy: matrix: - api-level: [21, 22, 23, 24, 25, 27, 28] + api-level: [21, 22, 23, 24, 25, 27, 28, 30] fail-fast: false runs-on: macOS-latest steps: From da593268a31b1608eba0c96458d44076189eb2fc Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Thu, 28 Oct 2021 17:10:58 +0530 Subject: [PATCH 04/29] added MANAGE_EXTERNAL_STORAGE permission --- app/detekt_baseline.xml | 2 +- .../library/LocalLibraryFragment.kt | 38 ++++++++++++++++++- core/src/main/AndroidManifest.xml | 2 + .../core/utils/SharedPreferenceUtil.kt | 8 ++++ .../core/utils/dialog/KiwixDialog.kt | 8 ++++ core/src/main/res/values/strings.xml | 2 + 6 files changed, 58 insertions(+), 2 deletions(-) diff --git a/app/detekt_baseline.xml b/app/detekt_baseline.xml index 40e2c3c8a..2c43a15d6 100644 --- a/app/detekt_baseline.xml +++ b/app/detekt_baseline.xml @@ -11,7 +11,7 @@ MagicNumber:ShareFiles.kt$ShareFiles$24 MagicNumber:ZimManageViewModel.kt$ZimManageViewModel$5 MagicNumber:ZimManageViewModel.kt$ZimManageViewModel$500 - MagicNumber:ZimHostFragment.kt$ZimHostFragment$4 + NestedBlockDepth:LocalLibraryFragment.kt$LocalLibraryFragment$checkPermissions NestedBlockDepth:PeerGroupHandshake.kt$PeerGroupHandshake$readHandshakeAndExchangeMetaData NestedBlockDepth:ReceiverHandShake.kt$ReceiverHandShake$exchangeFileTransferMetadata PackageNaming:AvailableSpaceCalculator.kt$package org.kiwix.kiwixmobile.zim_manager.library_view diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt index 592471fc5..59790c3ee 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt @@ -20,7 +20,9 @@ package org.kiwix.kiwixmobile.nav.destination.library import android.Manifest import android.content.pm.PackageManager +import android.os.Build import android.os.Bundle +import android.os.Environment import android.view.LayoutInflater import android.view.Menu import android.view.MenuInflater @@ -62,6 +64,12 @@ import org.kiwix.kiwixmobile.zim_manager.ZimManageViewModel.FileSelectActions.Re import org.kiwix.kiwixmobile.zim_manager.ZimManageViewModel.FileSelectActions.RequestSelect import org.kiwix.kiwixmobile.zim_manager.fileselect_view.FileSelectListState import javax.inject.Inject +import android.content.Intent +import android.net.Uri +import android.provider.Settings +import androidx.annotation.RequiresApi +import org.kiwix.kiwixmobile.core.utils.dialog.DialogShower +import org.kiwix.kiwixmobile.core.utils.dialog.KiwixDialog private const val WAS_IN_ACTION_MODE = "WAS_IN_ACTION_MODE" @@ -69,6 +77,7 @@ class LocalLibraryFragment : BaseFragment() { @Inject lateinit var viewModelFactory: ViewModelProvider.Factory @Inject lateinit var sharedPreferenceUtil: SharedPreferenceUtil + @Inject lateinit var dialogShower: DialogShower private var actionMode: ActionMode? = null private val disposable = CompositeDisposable() @@ -202,7 +211,25 @@ class LocalLibraryFragment : BaseFragment() { REQUEST_STORAGE_PERMISSION ) } else { - requestFileSystemCheck() + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + if (Environment.isExternalStorageManager()) { + // We already have permission!! + requestFileSystemCheck() + } else { + if (sharedPreferenceUtil.manageExternalFilesPermissionDialog) { + // We should only ask for first time, If the users wants to revoke settings + // then they can directly toggle this feature from settings screen + sharedPreferenceUtil.manageExternalFilesPermissionDialog = false + // Show Dialog and Go to settings to give permission + dialogShower.show( + KiwixDialog.ManageExternalFilesPermissionDialog, + ::navigateToSettings + ) + } + } + } else { + requestFileSystemCheck() + } } } @@ -217,4 +244,13 @@ class LocalLibraryFragment : BaseFragment() { private fun navigateToLocalFileTransferFragment() { requireActivity().navigate(R.id.localFileTransferFragment) } + + @RequiresApi(Build.VERSION_CODES.R) + private fun navigateToSettings() { + val intent = Intent().apply { + action = Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION + data = Uri.fromParts("package", requireActivity().packageName, null) + } + startActivity(intent) + } } diff --git a/core/src/main/AndroidManifest.xml b/core/src/main/AndroidManifest.xml index da773d305..f9b3b51b1 100644 --- a/core/src/main/AndroidManifest.xml +++ b/core/src/main/AndroidManifest.xml @@ -8,6 +8,8 @@ + diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SharedPreferenceUtil.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SharedPreferenceUtil.kt index 8c7cc8ea9..19c4d0ac7 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SharedPreferenceUtil.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SharedPreferenceUtil.kt @@ -140,6 +140,13 @@ class SharedPreferenceUtil @Inject constructor(val context: Context) { fun updateNightMode() = nightModes.offer(nightMode) + var manageExternalFilesPermissionDialog: Boolean + get() = sharedPreferences.getBoolean(PREF_MANAGE_EXTERNAL_FILES, true) + set(prefManageExternalFilesPermissionDialog) = + sharedPreferences.edit { + putBoolean(PREF_MANAGE_EXTERNAL_FILES, prefManageExternalFilesPermissionDialog) + } + var hostedBooks: Set get() = sharedPreferences.getStringSet(PREF_HOSTED_BOOKS, null)?.toHashSet() ?: HashSet() set(hostedBooks) { @@ -172,5 +179,6 @@ class SharedPreferenceUtil @Inject constructor(val context: Context) { const val PREF_NIGHT_MODE = "pref_night_mode" private const val TEXT_ZOOM = "true_text_zoom" private const val DEFAULT_ZOOM = 100 + private const val PREF_MANAGE_EXTERNAL_FILES = "pref_manage_external_files" } } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/dialog/KiwixDialog.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/dialog/KiwixDialog.kt index 53ce42151..7bb1139ac 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/dialog/KiwixDialog.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/dialog/KiwixDialog.kt @@ -84,6 +84,14 @@ sealed class KiwixDialog( cancelable = false ) + object ManageExternalFilesPermissionDialog : KiwixDialog( + R.string.all_files_permission_needed, + R.string.all_files_permission_needed_message, + R.string.yes, + R.string.no, + cancelable = false + ) + data class ShowHotspotDetails(override val args: List) : KiwixDialog( R.string.hotspot_turned_on, R.string.hotspot_details_message, diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index af11074bc..ab452dbe4 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -289,6 +289,8 @@ Close Drawer How to update content? To update content (a zim file) you need to download the full latest version of this very same content. You can do that via the download section. + All Files Permission Needed + In order to access all the zim files across device we need to have All Files Permission @string/on @string/off From 449df6f6abc1ea5d07853f37d7c08fd207fb0f67 Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Thu, 28 Oct 2021 17:48:24 +0530 Subject: [PATCH 05/29] added manage external storage permission in prefrence --- .../core/settings/CorePrefsFragment.java | 36 +++++++++++++++++++ core/src/main/res/values/strings.xml | 4 +++ core/src/main/res/xml/preferences.xml | 11 ++++++ 3 files changed, 51 insertions(+) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java b/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java index badbf0f49..dedce8e1b 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java @@ -20,11 +20,17 @@ package org.kiwix.kiwixmobile.core.settings; import android.Manifest; import android.annotation.SuppressLint; +import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; +import android.net.Uri; +import android.os.Build; import android.os.Bundle; +import android.os.Environment; +import android.provider.Settings; import android.view.LayoutInflater; import android.webkit.WebView; +import androidx.annotation.RequiresApi; import androidx.core.content.ContextCompat; import androidx.navigation.NavController; import androidx.preference.EditTextPreference; @@ -62,6 +68,8 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme public static final String PREF_CLEAR_ALL_HISTORY = "pref_clear_all_history"; public static final String PREF_CLEAR_ALL_NOTES = "pref_clear_all_notes"; public static final String PREF_CREDITS = "pref_credits"; + public static final String PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION = + "pref_manage_external_storage"; private static final int ZOOM_OFFSET = 2; private static final int ZOOM_SCALE = 25; private static final String INTERNAL_TEXT_ZOOM = "text_zoom"; @@ -87,6 +95,7 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme setStorage(); setUpSettings(); setupZoom(); + setMangeExternalStoragePermission(); new LanguageUtils(getActivity()).changeFont(getActivity().getLayoutInflater(), sharedPreferenceUtil); } @@ -174,6 +183,23 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme versionPref.setSummary(getVersionName() + " Build: " + getVersionCode()); } + private void setMangeExternalStoragePermission() { + Preference permissionPref = findPreference(PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION); + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) { + boolean externalStorageManager = Environment.isExternalStorageManager(); + if (externalStorageManager) { + permissionPref.setSummary(R.string.allowed); + } else { + permissionPref.setSummary(R.string.not_allowed); + } + permissionPref.setOnPreferenceClickListener( + preference -> { + navigateToSettings(); + return true; + }); + } + } + private int getVersionCode() { try { return getActivity().getPackageManager() @@ -282,4 +308,14 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme } return Unit.INSTANCE; } + + // TODO: 28/10/21 Refactor the code. We are using it twice. + @RequiresApi(Build.VERSION_CODES.R) + private void navigateToSettings() { + Intent intent = new Intent(); + intent.setAction(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION); + Uri uri = Uri.fromParts("package", getActivity().getPackageName(), null); + intent.setData(uri); + startActivity(intent); + } } diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index ab452dbe4..3fe554565 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -68,6 +68,7 @@ Clear history Clear recent searches and tabs history Notes + Permissions All History Cleared Clear bookmarks Clear All History? @@ -255,6 +256,7 @@ Status Clears all notes on all articles Clear all notes + MANAGE_EXTERNAL_STORAGE Change text size with 25\% increments. Pic Vid @@ -291,6 +293,8 @@ To update content (a zim file) you need to download the full latest version of this very same content. You can do that via the download section. All Files Permission Needed In order to access all the zim files across device we need to have All Files Permission + Allowed + Not allowed @string/on @string/off diff --git a/core/src/main/res/xml/preferences.xml b/core/src/main/res/xml/preferences.xml index e8e0c52cb..323f4c9dc 100644 --- a/core/src/main/res/xml/preferences.xml +++ b/core/src/main/res/xml/preferences.xml @@ -95,6 +95,17 @@ android:title="@string/pref_clear_all_notes_title" app:iconSpaceReserved="false" /> + + + + + Date: Thu, 28 Oct 2021 18:44:10 +0530 Subject: [PATCH 06/29] added edge cases for android 30 or lower --- .../kiwix/kiwixmobile/core/settings/CorePrefsFragment.java | 7 +++++++ core/src/main/res/xml/preferences.xml | 1 + 2 files changed, 8 insertions(+) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java b/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java index dedce8e1b..11d52e618 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java @@ -36,6 +36,7 @@ import androidx.navigation.NavController; import androidx.preference.EditTextPreference; import androidx.preference.ListPreference; import androidx.preference.Preference; +import androidx.preference.PreferenceCategory; import androidx.preference.PreferenceFragmentCompat; import com.google.android.material.snackbar.Snackbar; import eu.mhutti1.utils.storage.StorageDevice; @@ -70,6 +71,7 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme public static final String PREF_CREDITS = "pref_credits"; public static final String PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION = "pref_manage_external_storage"; + public static final String PREF_PERMISSION = "pref_permissions"; private static final int ZOOM_OFFSET = 2; private static final int ZOOM_SCALE = 25; private static final String INTERNAL_TEXT_ZOOM = "text_zoom"; @@ -186,6 +188,7 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme private void setMangeExternalStoragePermission() { Preference permissionPref = findPreference(PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION); if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) { + showPermissionPreference(); boolean externalStorageManager = Environment.isExternalStorageManager(); if (externalStorageManager) { permissionPref.setSummary(R.string.allowed); @@ -199,6 +202,10 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme }); } } + private void showPermissionPreference() { + PreferenceCategory preferenceCategory = findPreference(PREF_PERMISSION); + preferenceCategory.setVisible(true); + } private int getVersionCode() { try { diff --git a/core/src/main/res/xml/preferences.xml b/core/src/main/res/xml/preferences.xml index 323f4c9dc..35a06d03a 100644 --- a/core/src/main/res/xml/preferences.xml +++ b/core/src/main/res/xml/preferences.xml @@ -99,6 +99,7 @@ Date: Thu, 28 Oct 2021 19:54:24 +0530 Subject: [PATCH 07/29] pref_manage_external_storage_name_changed --- core/src/main/res/values/strings.xml | 2 +- core/src/main/res/xml/preferences.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index 3fe554565..4a7c1289b 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -256,7 +256,7 @@ Status Clears all notes on all articles Clear all notes - MANAGE_EXTERNAL_STORAGE + Allow to read/write ZIM file\'s on SD card Change text size with 25\% increments. Pic Vid diff --git a/core/src/main/res/xml/preferences.xml b/core/src/main/res/xml/preferences.xml index 35a06d03a..081a15b34 100644 --- a/core/src/main/res/xml/preferences.xml +++ b/core/src/main/res/xml/preferences.xml @@ -104,7 +104,7 @@ From d7c99cd3075fd18fc6e7d0622eb1618d6e67a0cc Mon Sep 17 00:00:00 2001 From: "Amir E. Aharoni" Date: Wed, 10 Nov 2021 10:02:31 +0200 Subject: [PATCH 08/29] Rephrase pref_allow_to_read_or_write_zim_files_on_sd_card 1. Remove unnecessary apostrophe. 2. Replace a slash with "and", which is more natural to read. --- core/src/main/res/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index 4a7c1289b..4de469255 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -256,7 +256,7 @@ Status Clears all notes on all articles Clear all notes - Allow to read/write ZIM file\'s on SD card + Allow to read and write ZIM files on SD card Change text size with 25\% increments. Pic Vid From dee218b57c962047100832fd0e26bf3c2b9f6bb4 Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Wed, 10 Nov 2021 16:23:12 +0530 Subject: [PATCH 09/29] #2733 fixed bug --- .../kiwix/kiwixmobile/custom/settings/CustomPrefsFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom/src/main/java/org/kiwix/kiwixmobile/custom/settings/CustomPrefsFragment.kt b/custom/src/main/java/org/kiwix/kiwixmobile/custom/settings/CustomPrefsFragment.kt index 2ae639295..77cea63c1 100644 --- a/custom/src/main/java/org/kiwix/kiwixmobile/custom/settings/CustomPrefsFragment.kt +++ b/custom/src/main/java/org/kiwix/kiwixmobile/custom/settings/CustomPrefsFragment.kt @@ -32,7 +32,7 @@ class CustomPrefsFragment : CorePrefsFragment() { } else { preferenceScreen.removePreference(findPreference("pref_language")) } - preferenceScreen.removePreference(findPreference(PREF_WIFI_ONLY)) + preferenceScreen.removePreferenceRecursively(PREF_WIFI_ONLY) } override fun setStorage() { From 6e885f755696104cc5c66eb5c3988c0f0b73d342 Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Wed, 10 Nov 2021 17:04:07 +0530 Subject: [PATCH 10/29] #2732 refactored all files access permission code to app module and bug fixed in custom app showing unneceesary permission --- app/src/main/AndroidManifest.xml | 2 + .../library/LocalLibraryFragment.kt | 23 ++++------ .../settings/KiwixPrefsFragment.kt | 36 ++++++++++++++++ core/src/main/AndroidManifest.xml | 2 - .../org/kiwix/kiwixmobile/core/Intents.kt | 13 ++++++ .../core/settings/CorePrefsFragment.java | 42 +------------------ 6 files changed, 60 insertions(+), 58 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 53648ce78..a68032508 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -6,6 +6,8 @@ + diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt index 59790c3ee..e97562289 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/LocalLibraryFragment.kt @@ -33,6 +33,7 @@ import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.view.ActionMode import androidx.appcompat.widget.Toolbar import androidx.core.content.ContextCompat +import androidx.fragment.app.FragmentActivity import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.LinearLayoutManager @@ -51,9 +52,12 @@ import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.navigate import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.viewModel import org.kiwix.kiwixmobile.core.extensions.toast import org.kiwix.kiwixmobile.core.main.CoreMainActivity +import org.kiwix.kiwixmobile.core.navigateToSettings import org.kiwix.kiwixmobile.core.utils.LanguageUtils import org.kiwix.kiwixmobile.core.utils.REQUEST_STORAGE_PERMISSION import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil +import org.kiwix.kiwixmobile.core.utils.dialog.DialogShower +import org.kiwix.kiwixmobile.core.utils.dialog.KiwixDialog import org.kiwix.kiwixmobile.core.zim_manager.fileselect_view.adapter.BookOnDiskDelegate import org.kiwix.kiwixmobile.core.zim_manager.fileselect_view.adapter.BooksOnDiskAdapter import org.kiwix.kiwixmobile.core.zim_manager.fileselect_view.adapter.BooksOnDiskListItem @@ -64,12 +68,6 @@ import org.kiwix.kiwixmobile.zim_manager.ZimManageViewModel.FileSelectActions.Re import org.kiwix.kiwixmobile.zim_manager.ZimManageViewModel.FileSelectActions.RequestSelect import org.kiwix.kiwixmobile.zim_manager.fileselect_view.FileSelectListState import javax.inject.Inject -import android.content.Intent -import android.net.Uri -import android.provider.Settings -import androidx.annotation.RequiresApi -import org.kiwix.kiwixmobile.core.utils.dialog.DialogShower -import org.kiwix.kiwixmobile.core.utils.dialog.KiwixDialog private const val WAS_IN_ACTION_MODE = "WAS_IN_ACTION_MODE" @@ -223,7 +221,9 @@ class LocalLibraryFragment : BaseFragment() { // Show Dialog and Go to settings to give permission dialogShower.show( KiwixDialog.ManageExternalFilesPermissionDialog, - ::navigateToSettings + { + this.activity?.let(FragmentActivity::navigateToSettings) + } ) } } @@ -244,13 +244,4 @@ class LocalLibraryFragment : BaseFragment() { private fun navigateToLocalFileTransferFragment() { requireActivity().navigate(R.id.localFileTransferFragment) } - - @RequiresApi(Build.VERSION_CODES.R) - private fun navigateToSettings() { - val intent = Intent().apply { - action = Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION - data = Uri.fromParts("package", requireActivity().packageName, null) - } - startActivity(intent) - } } diff --git a/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt index 8956f3678..da9b1a760 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt @@ -18,10 +18,15 @@ package org.kiwix.kiwixmobile.settings +import android.os.Build import android.os.Bundle +import android.os.Environment import androidx.core.content.ContextCompat +import androidx.fragment.app.FragmentActivity import androidx.preference.Preference +import androidx.preference.PreferenceCategory import org.kiwix.kiwixmobile.R +import org.kiwix.kiwixmobile.core.navigateToSettings import org.kiwix.kiwixmobile.core.settings.CorePrefsFragment import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil.Companion.PREF_STORAGE @@ -31,6 +36,7 @@ class KiwixPrefsFragment : CorePrefsFragment() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { super.onCreatePreferences(savedInstanceState, rootKey) setUpLanguageChooser(SharedPreferenceUtil.PREF_LANG) + setMangeExternalStoragePermission() } override fun setStorage() { @@ -43,4 +49,34 @@ class KiwixPrefsFragment : CorePrefsFragment() { private fun internalStorage(): String? = ContextCompat.getExternalFilesDirs(requireContext(), null).firstOrNull()?.path + + private fun setMangeExternalStoragePermission() { + val permissionPref = findPreference(PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + showPermissionPreference() + val externalStorageManager = Environment.isExternalStorageManager() + if (externalStorageManager) { + permissionPref!!.setSummary(org.kiwix.kiwixmobile.core.R.string.allowed) + } else { + permissionPref!!.setSummary(org.kiwix.kiwixmobile.core.R.string.not_allowed) + } + permissionPref.onPreferenceClickListener = + Preference.OnPreferenceClickListener { + activity?.let(FragmentActivity::navigateToSettings) + true + } + } + } + + private fun showPermissionPreference() { + val preferenceCategory = findPreference( + PREF_PERMISSION + ) + preferenceCategory!!.isVisible = true + } + + companion object { + const val PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION = + "pref_manage_external_storage"; + } } diff --git a/core/src/main/AndroidManifest.xml b/core/src/main/AndroidManifest.xml index f9b3b51b1..da773d305 100644 --- a/core/src/main/AndroidManifest.xml +++ b/core/src/main/AndroidManifest.xml @@ -8,8 +8,6 @@ - diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt index ea6f46326..cb4b0829c 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt @@ -20,8 +20,21 @@ package org.kiwix.kiwixmobile.core import android.app.Activity import android.content.Intent +import android.net.Uri +import android.os.Build +import android.provider.Settings +import androidx.annotation.RequiresApi object Intents { @JvmStatic fun internal(clazz: Class): Intent = Intent(clazz.canonicalName).setPackage(CoreApp.instance.packageName) } +@RequiresApi(Build.VERSION_CODES.R) +fun Activity.navigateToSettings() { + val intent = Intent().apply { + action = Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION + data = Uri.fromParts("package", packageName, null) + } + startActivity(intent) +} + diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java b/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java index 11d52e618..5a38303cf 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/settings/CorePrefsFragment.java @@ -20,23 +20,16 @@ package org.kiwix.kiwixmobile.core.settings; import android.Manifest; import android.annotation.SuppressLint; -import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.PackageManager; -import android.net.Uri; -import android.os.Build; import android.os.Bundle; -import android.os.Environment; -import android.provider.Settings; import android.view.LayoutInflater; import android.webkit.WebView; -import androidx.annotation.RequiresApi; import androidx.core.content.ContextCompat; import androidx.navigation.NavController; import androidx.preference.EditTextPreference; import androidx.preference.ListPreference; import androidx.preference.Preference; -import androidx.preference.PreferenceCategory; import androidx.preference.PreferenceFragmentCompat; import com.google.android.material.snackbar.Snackbar; import eu.mhutti1.utils.storage.StorageDevice; @@ -69,8 +62,6 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme public static final String PREF_CLEAR_ALL_HISTORY = "pref_clear_all_history"; public static final String PREF_CLEAR_ALL_NOTES = "pref_clear_all_notes"; public static final String PREF_CREDITS = "pref_credits"; - public static final String PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION = - "pref_manage_external_storage"; public static final String PREF_PERMISSION = "pref_permissions"; private static final int ZOOM_OFFSET = 2; private static final int ZOOM_SCALE = 25; @@ -97,7 +88,6 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme setStorage(); setUpSettings(); setupZoom(); - setMangeExternalStoragePermission(); new LanguageUtils(getActivity()).changeFont(getActivity().getLayoutInflater(), sharedPreferenceUtil); } @@ -185,27 +175,8 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme versionPref.setSummary(getVersionName() + " Build: " + getVersionCode()); } - private void setMangeExternalStoragePermission() { - Preference permissionPref = findPreference(PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION); - if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) { - showPermissionPreference(); - boolean externalStorageManager = Environment.isExternalStorageManager(); - if (externalStorageManager) { - permissionPref.setSummary(R.string.allowed); - } else { - permissionPref.setSummary(R.string.not_allowed); - } - permissionPref.setOnPreferenceClickListener( - preference -> { - navigateToSettings(); - return true; - }); - } - } - private void showPermissionPreference() { - PreferenceCategory preferenceCategory = findPreference(PREF_PERMISSION); - preferenceCategory.setVisible(true); - } + + private int getVersionCode() { try { @@ -316,13 +287,4 @@ public abstract class CorePrefsFragment extends PreferenceFragmentCompat impleme return Unit.INSTANCE; } - // TODO: 28/10/21 Refactor the code. We are using it twice. - @RequiresApi(Build.VERSION_CODES.R) - private void navigateToSettings() { - Intent intent = new Intent(); - intent.setAction(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION); - Uri uri = Uri.fromParts("package", getActivity().getPackageName(), null); - intent.setData(uri); - startActivity(intent); - } } From 506b1243c9a6ff0bd7f9b614bd03705293ef89da Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Wed, 10 Nov 2021 17:24:14 +0530 Subject: [PATCH 11/29] formated code --- .../java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt | 2 +- core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt index da9b1a760..948466170 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/settings/KiwixPrefsFragment.kt @@ -77,6 +77,6 @@ class KiwixPrefsFragment : CorePrefsFragment() { companion object { const val PREF_MANAGE_EXTERNAL_STORAGE_PERMISSION = - "pref_manage_external_storage"; + "pref_manage_external_storage" } } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt index cb4b0829c..80eda6769 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/Intents.kt @@ -37,4 +37,3 @@ fun Activity.navigateToSettings() { } startActivity(intent) } - From 662fde559c61783b6b787a624453c3edfc4740be Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Thu, 18 Nov 2021 12:43:58 +0530 Subject: [PATCH 12/29] kiwix#2717 added addOnScrollListener to hide keyboard in PageFragment.kt and onlineLibraryFragment.kt --- .../library/OnlineLibraryFragment.kt | 9 +++++ .../core/extensions/FragmentExtensions.kt | 6 +++ .../kiwixmobile/core/page/PageFragment.kt | 9 +++++ .../utils/SimpleRecyclerViewScrollListener.kt | 38 +++++++++++++++++++ 4 files changed, 62 insertions(+) create mode 100644 core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt index 76e6408a5..4453b0818 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt @@ -49,11 +49,13 @@ import org.kiwix.kiwixmobile.core.downloader.Downloader import org.kiwix.kiwixmobile.core.entity.LibraryNetworkEntity import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.navigate import org.kiwix.kiwixmobile.core.extensions.ActivityExtensions.viewModel +import org.kiwix.kiwixmobile.core.extensions.closeKeyboard import org.kiwix.kiwixmobile.core.extensions.snack import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.utils.BookUtils import org.kiwix.kiwixmobile.core.utils.NetworkUtils import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil +import org.kiwix.kiwixmobile.core.utils.SimpleRecyclerViewScrollListener import org.kiwix.kiwixmobile.core.utils.SimpleTextListener import org.kiwix.kiwixmobile.core.utils.dialog.DialogShower import org.kiwix.kiwixmobile.core.utils.dialog.KiwixDialog @@ -141,6 +143,13 @@ class OnlineLibraryFragment : BaseFragment(), FragmentActivityExtensions { zimManageViewModel.shouldShowWifiOnlyDialog.value = false } }) + + // hides keyboard when scrolled + libraryList.addOnScrollListener(SimpleRecyclerViewScrollListener { _, newState -> + if (newState == RecyclerView.SCROLL_STATE_DRAGGING) { + libraryList.closeKeyboard() + } + }) } override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt index 17919d1ca..eeadaa799 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt @@ -19,6 +19,7 @@ package org.kiwix.kiwixmobile.core.extensions import android.content.Context +import android.view.View import android.view.inputmethod.InputMethodManager import android.widget.Toast import androidx.fragment.app.Fragment @@ -41,4 +42,9 @@ fun Fragment.closeKeyboard() { inputMethodManager.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0) } +fun View.closeKeyboard() { + val imm = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager + imm.hideSoftInputFromWindow(windowToken, 0) +} + val Fragment.coreMainActivity get() = activity as CoreMainActivity diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt index 0b5a8aaee..375029a52 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/page/PageFragment.kt @@ -42,6 +42,7 @@ import kotlinx.android.synthetic.main.layout_toolbar.toolbar import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.core.base.BaseFragment import org.kiwix.kiwixmobile.core.base.FragmentActivityExtensions +import org.kiwix.kiwixmobile.core.extensions.closeKeyboard import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.page.adapter.OnItemClickListener import org.kiwix.kiwixmobile.core.page.adapter.Page @@ -50,6 +51,7 @@ import org.kiwix.kiwixmobile.core.page.viewmodel.Action import org.kiwix.kiwixmobile.core.page.viewmodel.PageState import org.kiwix.kiwixmobile.core.page.viewmodel.PageViewModel import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil +import org.kiwix.kiwixmobile.core.utils.SimpleRecyclerViewScrollListener import org.kiwix.kiwixmobile.core.utils.SimpleTextListener import javax.inject.Inject @@ -135,6 +137,13 @@ abstract class PageFragment : OnItemClickListener, BaseFragment(), FragmentActiv pageViewModel.actions.offer(Action.UserClickedShowAllToggle(isChecked)) } pageViewModel.state.observe(viewLifecycleOwner, Observer(::render)) + + // hides keyboard when scrolled + recycler_view.addOnScrollListener(SimpleRecyclerViewScrollListener { _, newState -> + if (newState == RecyclerView.SCROLL_STATE_DRAGGING) { + recycler_view.closeKeyboard() + } + }) } override fun onCreateView( diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt new file mode 100644 index 000000000..ddd36b0b2 --- /dev/null +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt @@ -0,0 +1,38 @@ +/* + * Kiwix Android + * Copyright (c) 2021 Kiwix + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +package org.kiwix.kiwixmobile.core.utils + +import androidx.recyclerview.widget.RecyclerView + +class SimpleRecyclerViewScrollListener( + private val onLayoutScrollListener: (RecyclerView, Int) -> Unit // here we are calling callback +) : + RecyclerView.OnScrollListener() { + override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) { + super.onScrollStateChanged(recyclerView, newState) + onLayoutScrollListener( + recyclerView, + newState + ) // implement the callback by passing recyclerview and newState + super.onScrollStateChanged(recyclerView, newState) + } +} + + + From 0e8b74d8bc0cb751e97c7140dc2eddb02e3c81a5 Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Thu, 18 Nov 2021 14:34:45 +0530 Subject: [PATCH 13/29] #2717 removed requireFragmentManager() --- .../nav/destination/library/OnlineLibraryFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt index 4453b0818..b1c2cc1b6 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt @@ -274,5 +274,5 @@ class OnlineLibraryFragment : BaseFragment(), FragmentActivityExtensions { .apply { onSelectAction = ::storeDeviceInPreferences } - .show(requireFragmentManager(), getString(R.string.pref_storage)) + .show(parentFragmentManager, getString(R.string.pref_storage)) } From 951a07367858741a1036152c44dbc665c32ef8b8 Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Sat, 20 Nov 2021 19:28:17 +0530 Subject: [PATCH 14/29] kiwix#2717 requested changes done --- .../nav/destination/library/OnlineLibraryFragment.kt | 2 +- .../core/utils/SimpleRecyclerViewScrollListener.kt | 8 ++------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt index b1c2cc1b6..4453b0818 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt @@ -274,5 +274,5 @@ class OnlineLibraryFragment : BaseFragment(), FragmentActivityExtensions { .apply { onSelectAction = ::storeDeviceInPreferences } - .show(parentFragmentManager, getString(R.string.pref_storage)) + .show(requireFragmentManager(), getString(R.string.pref_storage)) } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt index ddd36b0b2..64d5614c9 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/utils/SimpleRecyclerViewScrollListener.kt @@ -21,7 +21,7 @@ package org.kiwix.kiwixmobile.core.utils import androidx.recyclerview.widget.RecyclerView class SimpleRecyclerViewScrollListener( - private val onLayoutScrollListener: (RecyclerView, Int) -> Unit // here we are calling callback + private val onLayoutScrollListener: (RecyclerView, Int) -> Unit ) : RecyclerView.OnScrollListener() { override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) { @@ -29,10 +29,6 @@ class SimpleRecyclerViewScrollListener( onLayoutScrollListener( recyclerView, newState - ) // implement the callback by passing recyclerview and newState - super.onScrollStateChanged(recyclerView, newState) + ) } } - - - From 6680c094972a0ff59520ab72fc282326b1216270 Mon Sep 17 00:00:00 2001 From: Aditya Arora <54585121+AdiAr11@users.noreply.github.com> Date: Tue, 23 Nov 2021 11:14:38 +0530 Subject: [PATCH 15/29] #2721 launch screen icon updated (#2724) * #2721 launch screen icon updated * made the required changes * suppressed lint error * testing launch screen for API 23 and lower --- .../res/drawable-night-v24/kiwix_icon.xml | 27 +++++++++++++++++ .../main/res/drawable-night/kiwix_icon.xml | 27 +++++++++++++++++ .../main/res/drawable-night/launch_screen.xml | 7 ++--- app/src/main/res/drawable-v24/kiwix_icon.xml | 29 +++++++++++++++++++ app/src/main/res/drawable/kiwix_icon.xml | 29 +++++++++++++++++++ app/src/main/res/drawable/launch_screen.xml | 7 ++--- 6 files changed, 116 insertions(+), 10 deletions(-) create mode 100644 app/src/main/res/drawable-night-v24/kiwix_icon.xml create mode 100644 app/src/main/res/drawable-night/kiwix_icon.xml create mode 100644 app/src/main/res/drawable-v24/kiwix_icon.xml create mode 100644 app/src/main/res/drawable/kiwix_icon.xml diff --git a/app/src/main/res/drawable-night-v24/kiwix_icon.xml b/app/src/main/res/drawable-night-v24/kiwix_icon.xml new file mode 100644 index 000000000..4f41c3eba --- /dev/null +++ b/app/src/main/res/drawable-night-v24/kiwix_icon.xml @@ -0,0 +1,27 @@ + + + + + diff --git a/app/src/main/res/drawable-night/kiwix_icon.xml b/app/src/main/res/drawable-night/kiwix_icon.xml new file mode 100644 index 000000000..048ced6b3 --- /dev/null +++ b/app/src/main/res/drawable-night/kiwix_icon.xml @@ -0,0 +1,27 @@ + + + + + diff --git a/app/src/main/res/drawable-night/launch_screen.xml b/app/src/main/res/drawable-night/launch_screen.xml index 1d4d00751..1f69c6193 100644 --- a/app/src/main/res/drawable-night/launch_screen.xml +++ b/app/src/main/res/drawable-night/launch_screen.xml @@ -21,9 +21,6 @@ android:opacity="opaque"> - - - + diff --git a/app/src/main/res/drawable-v24/kiwix_icon.xml b/app/src/main/res/drawable-v24/kiwix_icon.xml new file mode 100644 index 000000000..16b1c0e76 --- /dev/null +++ b/app/src/main/res/drawable-v24/kiwix_icon.xml @@ -0,0 +1,29 @@ + + + + + diff --git a/app/src/main/res/drawable/kiwix_icon.xml b/app/src/main/res/drawable/kiwix_icon.xml new file mode 100644 index 000000000..32fbbca20 --- /dev/null +++ b/app/src/main/res/drawable/kiwix_icon.xml @@ -0,0 +1,29 @@ + + + + + diff --git a/app/src/main/res/drawable/launch_screen.xml b/app/src/main/res/drawable/launch_screen.xml index 0752c6b8e..6c38d8aa4 100644 --- a/app/src/main/res/drawable/launch_screen.xml +++ b/app/src/main/res/drawable/launch_screen.xml @@ -21,9 +21,6 @@ android:opacity="opaque"> - - - + From 314ff6f8dc40a4b11590685b0196f91e51fa1239 Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Wed, 20 Oct 2021 16:50:24 +0530 Subject: [PATCH 16/29] kiwix#2719 converted matcher.java to matcher.kt #issue#2719 proper file formating --- .../kiwix/kiwixmobile/testutils/Matcher.java | 45 ------------------- .../kiwix/kiwixmobile/testutils/Matcher.kt | 34 +++++++------- 2 files changed, 19 insertions(+), 60 deletions(-) delete mode 100644 app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.java diff --git a/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.java b/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.java deleted file mode 100644 index 28022c283..000000000 --- a/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Kiwix Android - * Copyright (c) 2019 Kiwix - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -package org.kiwix.kiwixmobile.testutils; - -import android.view.View; -import android.view.ViewGroup; -import android.view.ViewParent; -import org.hamcrest.Description; -import org.hamcrest.TypeSafeMatcher; - -public class Matcher { - public static org.hamcrest.Matcher childAtPosition( - final org.hamcrest.Matcher parentMatcher, final int position) { - return new TypeSafeMatcher() { - @Override - public void describeTo(Description description) { - description.appendText("Child at position " + position + " in parent "); - parentMatcher.describeTo(description); - } - - @Override - public boolean matchesSafely(View view) { - ViewParent parent = view.getParent(); - return parent instanceof ViewGroup && parentMatcher.matches(parent) - && view.equals(((ViewGroup) parent).getChildAt(position)); - } - }; - } -} diff --git a/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt b/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt index 69a0160e8..88c5e92b9 100644 --- a/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt +++ b/app/src/androidTest/java/org/kiwix/kiwixmobile/testutils/Matcher.kt @@ -1,6 +1,6 @@ /* * Kiwix Android - * Copyright (c) 2019 Kiwix + * Copyright (c) 2021 Kiwix * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or @@ -24,21 +24,25 @@ import org.hamcrest.Description import org.hamcrest.Matcher import org.hamcrest.TypeSafeMatcher -object Matcher { - fun childAtPosition( - parentMatcher: Matcher, - position: Int - ): Matcher { - return object : TypeSafeMatcher() { - override fun describeTo(description: Description) { - description.appendText("Child at position $position in parent ") - parentMatcher.describeTo(description) - } +class Matcher { + companion object { + @JvmStatic + fun childAtPosition( + parentMatcher: Matcher, + position: Int + ): Matcher { + return object : TypeSafeMatcher() { + override fun describeTo(description: Description) { + description.appendText("Child at position $position in parent ") + parentMatcher.describeTo(description) + } - public override fun matchesSafely(view: View): Boolean { - val parent = view.parent - return (parent is ViewGroup && parentMatcher.matches(parent) && - view == parent.getChildAt(position)) + public override fun matchesSafely(view: View): Boolean { + val parent = view.parent + return parent is ViewGroup && parentMatcher.matches(parent) && view == parent.getChildAt( + position + ) + } } } } From 815cf6184fbe7b496f519c1740ca929be9f9f77c Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Thu, 25 Nov 2021 23:16:11 +0530 Subject: [PATCH 17/29] added proper icon to onboarding screen --- .../res/drawable-night/kiwix_icon_with_title.png | Bin 5560 -> 0 bytes .../main/res/drawable/kiwix_icon_with_title.png | Bin 8698 -> 0 bytes app/src/main/res/layout/item_intro_1.xml | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 app/src/main/res/drawable-night/kiwix_icon_with_title.png delete mode 100644 app/src/main/res/drawable/kiwix_icon_with_title.png diff --git a/app/src/main/res/drawable-night/kiwix_icon_with_title.png b/app/src/main/res/drawable-night/kiwix_icon_with_title.png deleted file mode 100644 index c7a16aba88d3bc39aee9a18cc238c9a1df0f7c58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5560 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 SaI^ofv;%HoYu;gsxb=UN?uR%4 diff --git a/app/src/main/res/layout/item_intro_1.xml b/app/src/main/res/layout/item_intro_1.xml index ea9a8385c..35096c22d 100644 --- a/app/src/main/res/layout/item_intro_1.xml +++ b/app/src/main/res/layout/item_intro_1.xml @@ -11,7 +11,7 @@ app:layout_constraintHeight_max="160dp" app:layout_constraintWidth_max="160dp" android:scaleType="fitCenter" - android:src="@drawable/kiwix_icon_with_title" + android:src="@drawable/kiwix_icon" app:layout_constraintBottom_toTopOf="@id/heading" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" From 9eca3a299ced9b2ef146fce0c2c26334593ab3fe Mon Sep 17 00:00:00 2001 From: Justin Biggs Date: Sat, 27 Nov 2021 11:39:13 -0600 Subject: [PATCH 18/29] #2728 updated launcher long-press icon options to remove dead-end zim manager option. --- app/src/main/res/xml-v25/shortcuts.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/xml-v25/shortcuts.xml b/app/src/main/res/xml-v25/shortcuts.xml index 1c1ca67c6..0f632459e 100644 --- a/app/src/main/res/xml-v25/shortcuts.xml +++ b/app/src/main/res/xml-v25/shortcuts.xml @@ -13,7 +13,7 @@ Date: Mon, 29 Nov 2021 19:28:10 -0600 Subject: [PATCH 19/29] Launcher menu option launches main activity. --- app/src/main/res/xml-v25/shortcuts.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/xml-v25/shortcuts.xml b/app/src/main/res/xml-v25/shortcuts.xml index 0f632459e..316cf62ba 100644 --- a/app/src/main/res/xml-v25/shortcuts.xml +++ b/app/src/main/res/xml-v25/shortcuts.xml @@ -21,7 +21,7 @@ android:shortcutShortLabel="@string/get_content_shortcut_label"> From a8858ed4761c3c45c96601f13c0a53cea7e13142 Mon Sep 17 00:00:00 2001 From: Justin Biggs Date: Mon, 29 Nov 2021 19:34:00 -0600 Subject: [PATCH 20/29] Launcher menu option launches main activity. --- app/src/main/res/xml-v25/shortcuts.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/xml-v25/shortcuts.xml b/app/src/main/res/xml-v25/shortcuts.xml index 316cf62ba..b23b1d197 100644 --- a/app/src/main/res/xml-v25/shortcuts.xml +++ b/app/src/main/res/xml-v25/shortcuts.xml @@ -13,7 +13,7 @@ Date: Sat, 4 Dec 2021 17:24:57 +0530 Subject: [PATCH 21/29] #2636 Added Nightly Status Badge in Readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6dd4bff4f..13eae9fba 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,7 @@ pieces in Java). [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![Public Chat](https://img.shields.io/badge/public-chat-green)](https://chat.kiwix.org) [![Slack](https://img.shields.io/badge/Slack-chat-E01E5A)](https://kiwixoffline.slack.com) +[![Nightly](https://github.com/kiwix/kiwix-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/kiwix/kiwix-android/actions/workflows/nightly.yml) ## Build Instructions From a58cf146300ee71acf7aa3a174965634fab5258a Mon Sep 17 00:00:00 2001 From: Dhiraj Chauhan Date: Sat, 4 Dec 2021 17:54:08 +0530 Subject: [PATCH 22/29] added NIghtly Badge beside CI --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 13eae9fba..467995768 100644 --- a/README.md +++ b/README.md @@ -17,12 +17,12 @@ Kiwix Android is written in [Kotlin](https://kotlinlang.org/) (with a few old pieces in Java). [![Build Status](https://github.com/kiwix/kiwix-android/workflows/CI/badge.svg?query=branch%3Adevelop+workflow%3ANightly)](https://github.com/kiwix/kiwix-android/actions?query=workflow%3ANightly+branch%3Adevelop) +[![Nightly](https://github.com/kiwix/kiwix-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/kiwix/kiwix-android/actions/workflows/nightly.yml) [![codecov](https://codecov.io/gh/kiwix/kiwix-android/branch/develop/graph/badge.svg)](https://codecov.io/gh/kiwix/kiwix-android) [![CodeFactor](https://www.codefactor.io/repository/github/kiwix/kiwix-android/badge)](https://www.codefactor.io/repository/github/kiwix/kiwix-android) [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![Public Chat](https://img.shields.io/badge/public-chat-green)](https://chat.kiwix.org) [![Slack](https://img.shields.io/badge/Slack-chat-E01E5A)](https://kiwixoffline.slack.com) -[![Nightly](https://github.com/kiwix/kiwix-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/kiwix/kiwix-android/actions/workflows/nightly.yml) ## Build Instructions From 7da0156b20394e441cbd4797561cde4798fd7b25 Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Mon, 13 Dec 2021 23:09:25 +0530 Subject: [PATCH 23/29] added closeKeyboard when clicked on menu buttons --- .../java/org/kiwix/kiwixmobile/language/LanguageFragment.kt | 2 ++ .../nav/destination/library/OnlineLibraryFragment.kt | 1 + .../org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/language/LanguageFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/language/LanguageFragment.kt index 74f1e8c41..970400dde 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/language/LanguageFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/language/LanguageFragment.kt @@ -37,6 +37,7 @@ import org.kiwix.kiwixmobile.R import org.kiwix.kiwixmobile.cachedComponent import org.kiwix.kiwixmobile.core.base.BaseActivity import org.kiwix.kiwixmobile.core.base.BaseFragment +import org.kiwix.kiwixmobile.core.extensions.closeKeyboard import org.kiwix.kiwixmobile.core.extensions.viewModel import org.kiwix.kiwixmobile.core.main.CoreMainActivity import org.kiwix.kiwixmobile.core.utils.SimpleTextListener @@ -133,6 +134,7 @@ class LanguageFragment : BaseFragment() { return when (item.itemId) { R.id.menu_language_save -> { languageViewModel.actions.offer(Action.SaveAll) + closeKeyboard() true } else -> super.onOptionsItemSelected(item) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt index 4453b0818..69e9d30e1 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt @@ -169,6 +169,7 @@ class OnlineLibraryFragment : BaseFragment(), FragmentActivityExtensions { when (item.itemId) { R.id.select_language -> requireActivity().navigate(R.id.languageFragment) } + closeKeyboard() return super.onOptionsItemSelected(item) } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt index eeadaa799..f00af59b6 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt @@ -39,7 +39,7 @@ fun Fragment.toast(stringId: Int, length: Int = Toast.LENGTH_LONG) { fun Fragment.closeKeyboard() { val inputMethodManager = requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager - inputMethodManager.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0) + inputMethodManager.hideSoftInputFromWindow(view?.windowToken, InputMethodManager.HIDE_NOT_ALWAYS) } fun View.closeKeyboard() { From 1719b1596e9f287dc87552acfc9286bba0bf2c87 Mon Sep 17 00:00:00 2001 From: cdhiraj40 Date: Thu, 23 Dec 2021 23:32:32 +0530 Subject: [PATCH 24/29] added closeKeyboard when clicked on menu buttons --- .../nav/destination/library/OnlineLibraryFragment.kt | 6 ++++-- .../kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt index 69e9d30e1..1cc1acafb 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/nav/destination/library/OnlineLibraryFragment.kt @@ -167,9 +167,11 @@ class OnlineLibraryFragment : BaseFragment(), FragmentActivityExtensions { override fun onOptionsItemSelected(item: MenuItem): Boolean { when (item.itemId) { - R.id.select_language -> requireActivity().navigate(R.id.languageFragment) + R.id.select_language -> { + requireActivity().navigate(R.id.languageFragment) + closeKeyboard() + } } - closeKeyboard() return super.onOptionsItemSelected(item) } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt index f00af59b6..eeadaa799 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/extensions/FragmentExtensions.kt @@ -39,7 +39,7 @@ fun Fragment.toast(stringId: Int, length: Int = Toast.LENGTH_LONG) { fun Fragment.closeKeyboard() { val inputMethodManager = requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager - inputMethodManager.hideSoftInputFromWindow(view?.windowToken, InputMethodManager.HIDE_NOT_ALWAYS) + inputMethodManager.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0) } fun View.closeKeyboard() { From 6f185174c2a4a193fe97e0f20b445114f9fd9a29 Mon Sep 17 00:00:00 2001 From: Justin Biggs Date: Sun, 26 Dec 2021 11:49:00 -0600 Subject: [PATCH 25/29] #2728 launch downloads fragment from launcher shortcut "get content" --- .../main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt b/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt index 5e5004d5a..4bf34b77e 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt @@ -71,6 +71,9 @@ class KiwixMainActivity : CoreMainActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_kiwix_main) + if (intent.action == "GET_CONTENT") { + navigate(R.id.downloadsFragment) + } navController.addOnDestinationChangedListener(finishActionModeOnDestinationChange) drawer_nav_view.setupWithNavController(navController) From 9789f4c91e561a1d130c54a08e75e41edfaa56aa Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Thu, 27 Jan 2022 13:05:43 +0100 Subject: [PATCH 26/29] Localisation updates from https://translatewiki.net. --- app/src/main/res/values-my/strings.xml | 10 + app/src/main/res/values-sk/strings.xml | 11 + app/src/main/res/values-sms/strings.xml | 8 + app/src/main/res/values-sq/strings.xml | 11 + core/src/main/res/values-ar/strings.xml | 2 + core/src/main/res/values-be/strings.xml | 3 +- core/src/main/res/values-de/strings.xml | 7 +- core/src/main/res/values-diq/strings.xml | 1 + core/src/main/res/values-es/strings.xml | 6 +- core/src/main/res/values-fa/strings.xml | 4 + core/src/main/res/values-fi/strings.xml | 33 +++ core/src/main/res/values-fr/strings.xml | 6 + core/src/main/res/values-it/strings.xml | 217 ++++++++++++++++-- core/src/main/res/values-iw/strings.xml | 8 +- core/src/main/res/values-kn/strings.xml | 1 + core/src/main/res/values-ko/strings.xml | 19 ++ core/src/main/res/values-ku/strings.xml | 2 +- core/src/main/res/values-lb/strings.xml | 3 + core/src/main/res/values-lv/strings.xml | 2 + core/src/main/res/values-mg/strings.xml | 3 + core/src/main/res/values-mk/strings.xml | 6 + core/src/main/res/values-my/strings.xml | 30 +++ core/src/main/res/values-nb/strings.xml | 6 +- core/src/main/res/values-pl/strings.xml | 1 + core/src/main/res/values-pt-rBR/strings.xml | 3 + core/src/main/res/values-qq/strings.xml | 11 + core/src/main/res/values-ru/strings.xml | 6 + core/src/main/res/values-sc/strings.xml | 6 + core/src/main/res/values-sk/strings.xml | 170 ++++++++++++++ core/src/main/res/values-sq/strings.xml | 182 ++++++++++++++- core/src/main/res/values-sv/strings.xml | 3 + core/src/main/res/values-th/strings.xml | 43 +++- core/src/main/res/values-tr/strings.xml | 17 +- core/src/main/res/values-uk/strings.xml | 8 +- core/src/main/res/values-zh-rTW/strings.xml | 7 + custom/src/main/res/values-bn/strings.xml | 6 - custom/src/main/res/values-eo/strings.xml | 6 - custom/src/main/res/values-eu/strings.xml | 6 - .../strings.xml | 3 +- custom/src/main/res/values-qq/strings.xml | 6 - custom/src/main/res/values-sk/strings.xml | 2 + custom/src/main/res/values-smn/strings.xml | 6 - custom/src/main/res/values-sms/strings.xml | 6 - custom/src/main/res/values-sq/strings.xml | 8 + custom/src/main/res/values-zh/strings.xml | 6 - 45 files changed, 818 insertions(+), 93 deletions(-) create mode 100644 app/src/main/res/values-my/strings.xml create mode 100644 app/src/main/res/values-sk/strings.xml create mode 100644 app/src/main/res/values-sms/strings.xml create mode 100644 app/src/main/res/values-sq/strings.xml delete mode 100644 custom/src/main/res/values-bn/strings.xml delete mode 100644 custom/src/main/res/values-eo/strings.xml delete mode 100644 custom/src/main/res/values-eu/strings.xml rename custom/src/main/res/{values-b+tg+Cyrl => values-my}/strings.xml (52%) delete mode 100644 custom/src/main/res/values-qq/strings.xml delete mode 100644 custom/src/main/res/values-smn/strings.xml delete mode 100644 custom/src/main/res/values-sms/strings.xml create mode 100644 custom/src/main/res/values-sq/strings.xml delete mode 100644 custom/src/main/res/values-zh/strings.xml diff --git a/app/src/main/res/values-my/strings.xml b/app/src/main/res/values-my/strings.xml new file mode 100644 index 000000000..5eb352556 --- /dev/null +++ b/app/src/main/res/values-my/strings.xml @@ -0,0 +1,10 @@ + + + + 4GB ထက်ပိုသောဖိုင်များကို သင်၏ဖိုင်စနစ်က မထောက်ပံ့ပါ + ဖိုင်စနစ်က 4GB ဖန်တီးနိုင်ပါက ခြေရာခံမိရန် + ဖိုင်များပို့ရန် + ဖိုင်များလက်ခံရန် + diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml new file mode 100644 index 000000000..e7ef5ef0f --- /dev/null +++ b/app/src/main/res/values-sk/strings.xml @@ -0,0 +1,11 @@ + + + + Váš súborový systém nepodporuje súbory väčšie než 4GB + Zisťovanie či súborový systém môže vytvoriť súbory veľké 4GB + Nepodarilo sa otvoriť súbor\nProsím skúste tento súbor nájsť na karte zariadenia vo vašej knižnici + Poslať súbory + Prijať súbory + diff --git a/app/src/main/res/values-sms/strings.xml b/app/src/main/res/values-sms/strings.xml new file mode 100644 index 000000000..2e3746c52 --- /dev/null +++ b/app/src/main/res/values-sms/strings.xml @@ -0,0 +1,8 @@ + + + + Vuõlttâd teâttõõzzid + Vääʹld teâttõõzzid vuâstta + diff --git a/app/src/main/res/values-sq/strings.xml b/app/src/main/res/values-sq/strings.xml new file mode 100644 index 000000000..98c9e2682 --- /dev/null +++ b/app/src/main/res/values-sq/strings.xml @@ -0,0 +1,11 @@ + + + + Sistemi juaj i kartelave nuk mbulon kartela mbi 4GB + Po shihet nëse sistemi i kartelave mund të krijojë kartela 4GB + S’u arrit të hapej kartela\nJu lutemi, provoni të shihni për këtë kartelë te Skeda Pajisje e Bibliotekës tuaj + Dërgoni Kartela + Merrni Kartela + diff --git a/core/src/main/res/values-ar/strings.xml b/core/src/main/res/values-ar/strings.xml index 63b4c2154..28a9f0363 100644 --- a/core/src/main/res/values-ar/strings.xml +++ b/core/src/main/res/values-ar/strings.xml @@ -4,6 +4,7 @@ * Eyas * Meno25 * Tala Ali +* Ulhvulgv * بدارين * ديفيد * علاء @@ -285,4 +286,5 @@ أغلق الدرج كيفية تحديث المحتوى؟ لتحديث احتوى (ملف zim)، تحتاج إلى تنزيل أحدث إصدارٍ كاملٍ من المحتوى نفسه. يمكنك القيام بذلك عبر قسم التنزيل. + In order to access all the zim files across device we need to have All Files Permission diff --git a/core/src/main/res/values-be/strings.xml b/core/src/main/res/values-be/strings.xml index 6b9867a4b..0f56560c3 100644 --- a/core/src/main/res/values-be/strings.xml +++ b/core/src/main/res/values-be/strings.xml @@ -1,6 +1,7 @@ Даведка @@ -20,7 +21,7 @@ Абярыце ZIM-файл (*.zim) Адкрыць спасылку ў новым вакенцы? Памылка: абраны ZIM-файл ня знойдзены. - Памылка: абраны файл не з\'яўляецца слушным ZIM-файлам. + Памылка: абраны файл не з’яўляецца слушным ZIM-файлам. Памылка: загрузка артыкула не атрымалася (Url: %1$s). Паказаць Інфармацыя diff --git a/core/src/main/res/values-de/strings.xml b/core/src/main/res/values-de/strings.xml index 837c10784..01a3e591e 100644 --- a/core/src/main/res/values-de/strings.xml +++ b/core/src/main/res/values-de/strings.xml @@ -13,6 +13,7 @@ * Stephane * Susann Schweden * Symposiarch +* Umlaut --> Hilfe @@ -58,6 +59,7 @@ Server starten Server anhalten Geben Sie diese IP-Adresse in Ihren Browser ein, um auf den Server %s zuzugreifen + URL mit anderen Applikationen teilen Fehler: Die ausgewählte ZIM-Datei konnte nicht gefunden werden. Konnte die ZIM-Datei nicht öffnen Fehler: Die ausgewählte Datei ist keine gültige ZIM-Datei. @@ -82,6 +84,7 @@ Verlauf löschen Letzte Suchanfragen und Registerkartenverlauf löschen Anmerkungen + Berechtigungen Gesamter Verlauf gelöscht Lesezeichen löschen Gesamten Verlauf löschen? @@ -256,7 +259,7 @@ Status Löscht alle Notizen zu allen Artikeln Alle Notizen löschen - Schriftgröße in 25\%-Schritten ändern. + Schriftgröße in 25%-Schritten ändern. Bild Video Nur Text @@ -289,4 +292,6 @@ Schublade öffnen Schublade schließen Wie erneuert man Inhalte? + Erlaubt + Nicht erlaubt diff --git a/core/src/main/res/values-diq/strings.xml b/core/src/main/res/values-diq/strings.xml index 2582f7cbe..1519be8a0 100644 --- a/core/src/main/res/values-diq/strings.xml +++ b/core/src/main/res/values-diq/strings.xml @@ -51,6 +51,7 @@ Serveri serkewtış Serveri vındardış Seba resayışê serverê %s re browseri rê ena adresê ip cı kerê + URL\'yi be aplikasyonanê binan ra bare ke Xeta: Dosyaya ZIMia weçinıtiye nêvêniye. Dosyay Zimi nêabiyena Xeta: Dosyaya weçinıtiye yew dosyaya ZIMia vêrdiye niya. diff --git a/core/src/main/res/values-es/strings.xml b/core/src/main/res/values-es/strings.xml index c2c6311d8..cd3e7c60e 100644 --- a/core/src/main/res/values-es/strings.xml +++ b/core/src/main/res/values-es/strings.xml @@ -2,9 +2,11 @@ @@ -43,6 +44,7 @@ آیا مطمئن هستید که می‌خواهید تمامی تاریخچه جستجو را پاک کنید و تمام زبانه‌های فعال را ریست کنید؟ این مورد حذف شود؟ پاک کردن تاریخچه + دسترسی‌ها تمامی تاریخچه پاک شد حذف نشانک‌ها همهٔ تاریخچه حذف شود؟ @@ -164,4 +166,6 @@ ارسال گزارش تشخیصی گزارش تشخیصی کتابخانهٔ آزاد + مجاز + مجاز نیست diff --git a/core/src/main/res/values-fi/strings.xml b/core/src/main/res/values-fi/strings.xml index 3d1456f6f..78563a289 100644 --- a/core/src/main/res/values-fi/strings.xml +++ b/core/src/main/res/values-fi/strings.xml @@ -61,12 +61,15 @@ Haluatko varmasti poistaa hakuhistoriasi ja resetoida kaikki aktiiviset välilehdet? Poista tämä kohde? Tyhjennä historia + Huomautukset + Käyttöoikeudet Kaikki historia tyhjennetty Tyhjennä kirjanmerkit Tyhjennä kaikki historia? Jaa Poista Peruuta + Viimeisin haku poistettu Voit tarkastella tämän artikkelin sisältöä pyyhkäisemällä vasemmalle Selvä Tiesitkö? @@ -130,16 +133,19 @@ jäljellä Tänään Eilen + Varo lisätessä ulkoisia linkkejä Ulkoisen linkin syöttäminen! Älä kysy enää Valitut kielet: Muut kielet: + Ei kohteita saatavilla Jaha… Tämä on noloa Omat kieliasetukset Luettelo Zim-tiedostoistasi Tiedot kaatumisesta Laitteen tiedot LÄHETÄ TIEDOT + Ei pikakuvaketta saatavilla Uusi välilehti Hanki sisältöä %s artikkelia @@ -148,6 +154,7 @@ Ihmiskunnan tieto puhelimessasi. Tervetuloa perheeseen Tallenna kirjoja offline-tilassa + Lataa kirjoja ja lue missä tahansa. Ei voitu lisätä kirjanmerkkeihin Siirry edelliselle sivulle Siirry seuraavalle sivulle @@ -157,22 +164,41 @@ Lähetä palautetta Laajenna Historia + Näytä historia kaikista kirjoista Hakuhistoria %1$d valittu + Näytä kirjanmerkit kaikista kirjoista Hae kirjanmerkkejä + Vaihda välilehtiä Sulje kaikki välilehdet Avoin Käynnissä + Valmis Pysäytetty + Epäonnistui: %s Tallenna Huomautus Wikiartikkelin otsikko + Huomautuksen tallennus epäonnistui + Huomautus poistettu onnistuneesti + Huomautusta ei poistettu + Huomautus tallennettu + Huomaustiedostoa ei ole olemassa Hylkää tallentamattomat muutokset? + Poista kaikki huomautukset? Joitakin tiedostoja ei poistettu %d kirja(a) + Yhteys epäonnistui + Tiedoston siirto valmis + Siirron aikana tapahtui virhe + Virhe siirrettäessä tiedostoa %s + Hanki sisältöä lähistöllä olevasta laitteesta Laitteesi: LÄHELLÄ OLEVAT LAITTEET + Valmistellaan tiedostoja siirtoon.... Tila + Tyhjennä kaikki huomautukset kaikista artikkeleista + Tyhjennä kaikki huomautukset Kuva Video Vain teksti @@ -188,6 +214,13 @@ Päälle Pois Auto + Lähetä kaikki seuraavat tiedot jotta voimme diagnosoida ongelman %d%% + Tekstin tarkennus Avaa uudessa välilehdessä + Avaa kirjasto + Välilehti palautettu + Kuinka päivittää sisältöä? + Sallittu + Ei sallittu diff --git a/core/src/main/res/values-fr/strings.xml b/core/src/main/res/values-fr/strings.xml index ddb3108a5..97df1ca38 100644 --- a/core/src/main/res/values-fr/strings.xml +++ b/core/src/main/res/values-fr/strings.xml @@ -85,6 +85,7 @@ Effacer l’historique Effacer les recherches récentes et l’historique des onglets Notes + Droits Tout l’historique est effacé Supprimer les marque-pages Effacer tout l’historique ? @@ -259,6 +260,7 @@ État Effacer toutes les notes sur tous les articles Effacer toutes les notes + Permettre de lire et écrire des fichiers ZIM sur la carte SD Modifier la taille du texte par incrément de 25 %. Image Vidéo @@ -293,4 +295,8 @@ Fermer le tiroir Comment actualiser le contenu ? Pour mettre à jour un contenu (un fichier zim), vous devez télécharger la dernière version complète de ce même contenu. Vous pouvez le faire via la section de téléchargement. + Tous les droits sur les fichiers nécessaires + Afin d’accéder à tous les fichiers zim sur l’appareil, nous devons avoir tous les droits sur les fichiers + Autorisé + Non autorisé diff --git a/core/src/main/res/values-it/strings.xml b/core/src/main/res/values-it/strings.xml index 296585dc2..b6f3341fc 100644 --- a/core/src/main/res/values-it/strings.xml +++ b/core/src/main/res/values-it/strings.xml @@ -4,6 +4,7 @@ * Beta16 * CloeRiva * Einreiher +* Fs00 * G.garatti * Gianfranco * Matteocng @@ -22,19 +23,45 @@ Esci dalla modalità a tutto schermo Leggi a voce alta Interrompi lettura a voce alta + Sostieni Kiwix + Hotspot Wi-Fi Salva file multimediale come… Si è verificato un errore durante il salvataggio del file multimediale! Salvato file multimediale come %s in Android/media/org.kiwix…/ - Ricerca + Cerca Seleziona un file di contenuto (*.zim) - Apri il collegamento in una nuova scheda? - Collegamento negato. + Vuoi aprire il collegamento in una nuova scheda? + Servizio hotspot + Errore durante l\'avvio dell\'hotspot + Sembra che il tuo hotspot sia già attivato. Disabilita il tuo hotspot Wi-Fi per continuare. + Vai alle impostazioni Wi-Fi + Connessione rifiutata. + Hotspot in esecuzione + Seleziona prima dei libri + Impossibile avviare il server. Attiva il tuo hotspot + Impossibile avviare il server. + Server avviato correttamente. + Server arrestato correttamente. + Hotspot attivato + Di seguito i dettagli del tuo hotspot locale.\nSSID: %1$s\nPassword: %2$s + Seleziona i file che vuoi ospitare sul server + Avvio del server in corso Istruzioni per ospitare libri + Connessione Wi-Fi rilevata + Per visualizzare i libri su altri dispositivi, assicurati che siano tutti connessi alla stessa rete Wi-Fi. + Per utilizzare questa funzionalità devi prima attivare manualmente il tuo hotspot Wi-Fi, o assicurarti che il dispositivo host e quello client siano connessi alla stessa rete Wi-Fi PROCEDI + Aggiornamenti sullo stato del tuo hotspot/server. + Hotspot di Kiwix + Avvia server + Arresta server + Inserisci questo indirizzo IP nel tuo browser per accedere al server: %s + Condividi URL con altre applicazioni Errore: il file ZIM selezionato non è stato trovato. + Impossibile aprire il file ZIM Errore: il file selezionato non è un file ZIM valido. - Errore: caricamento della voce (url: %1$s) non riuscito. - Visualizza + Errore: caricamento della voce (URL: %1$s) non riuscito. + Visualizzazione Informazioni Versione Modalità notte @@ -43,24 +70,31 @@ Mostra un pulsante alla fine della pagina per scorrere fino all\'inizio Lingua Scegli la lingua - Crediti - La lingua di questa pagina non è supportata, o i dati per il linguaggio appropriato non sono stati installati. La voce non può essere letta correttamente. + Contributori e licenze + Riconoscimenti + La lingua di questa pagina non è supportata, o i dati della lingua non sono stati installati. La voce non può essere letta correttamente. Non è stata trovata alcuna applicazione installata per questo tipo di file - Nessun intestazione di contenuto trovata - Per accedere al contenuto offline è necessario l\'accesso al tuo spazio di archiviazione - Sei sicuro di voler cancellare la tua cronologia di ricerca e resettare tutte le tab attive? - Elimina questo elemento? + Nessuna intestazione di contenuto trovata + Per accedere ai contenuti offline è necessario l\'accesso al tuo spazio di archiviazione + Sei sicuro di voler cancellare la tua cronologia di ricerca e reimpostare tutte le schede attive? + Vuoi eliminare questo elemento? Cancella la cronologia + Cancella le ricerche recenti e la cronologia delle schede aperte Note + Autorizzazioni Tutta la cronologia è stata cancellata - Cancellare tutta la cronologia? + Cancella i segnalibri + Vuoi cancellare tutta la cronologia? Condividi + Condividi file ZIM con: Cancella Annulla Ricerca recente rimossa + Puoi scorrere a sinistra per visualizzare i contenuti di questa voce Capito Lo sapevi? Annulla + Scheda chiusa Segnalibro aggiunto Valutaci Se ti piace usare @@ -71,59 +105,194 @@ Apri Segnalibro rimosso Apri nuova scheda in background - Quando si apre una nuova scheda verrà aperta in background + Quando si apre una nuova scheda, questa verrà aperta in background + Extra + Voce aperta in una nuova scheda + Cerca in Kiwix + Parla per cercare in %s + Il tuo dispositivo non supporta la digitazione vocale Dispositivo Connesso Libreria + I seguenti file ZIM verranno eliminati:\n\n%s File cancellato Nessun file qui - Lo spazio è insufficiente per scaricare. + Lo spazio è insufficiente per effettuare il download. Scarica Spazio disponibile: Semplice Nessuna immagine Nessun video + Nessuna connessione a Internet Cosa fa Kiwix? - Puoi sia scaricare i tuoi file ZIM in-app selezionati o selezionare attentamente quello/i che desideri e scaricarli attraverso il Desktop di un computer prima di trasferire i file ZIM sulla tua memoria SD. - I file ZIM scaricati nell\'applicazione sono localizzati nella directory di archiviazione esterna in una cartella chiamata Kiwix. + Kiwix è un lettore di contenuti offline. È molto simile a un browser, ma invece di accedere a pagine web online, legge il contenuto da un file in formato ZIM. + Nonostante Kiwix sia stato concepito per rendere Wikipedia fruibile in assenza di connessione a Internet, può essere usato anche per leggere altri contenuti. + Dove si trovano i contenuti? + I nostri contenuti sono ospitati sul sito web di Kiwix. + Sono disponibili sotto forma di file ZIM. Ce ne sono molti: + • Wikipedia è disponibile separatamente per ciascuna lingua + • Sono disponibili anche altri contenuti come Wikileaks o Wikisource + Puoi scaricare i file ZIM all\'interno dell\'app oppure selezionare quelli che preferisci e scaricarli usando un PC, per poi trasferirli sulla tua memoria SD. + I file ZIM scaricati all\'interno dell\'app vengono salvati nella memoria esterna in una cartella chiamata Kiwix. + Spazio di archiviazione Cartella attuale Non siamo stati in grado di eliminare alcuni file. Dovresti provare ad usare un gestore di file. pausa riprendi + interrompi + Interno Esterno No - Interrompere il download? + Vuoi interrompere il download? Sei sicuro di voler interrompere il download? - Selettore di strumento di archiviazione + Seleziona spazio di archiviazione + La lettura a voce alta non è abilitata per questo file ZIM + Inizializzazione del motore di sintesi vocale fallita. Riprova + Errore imprevisto nel motore di sintesi vocale. Riprova Successivo Precedente - Scarica contenuto solo tramite WiFi + Vuoi scaricare il contenuto usando le reti mobili? + Se scegli \"Sì\", non verrai più avvisato in futuro. Potrai comunque modificare questo comportamento nelle Impostazioni. + Scarica contenuti solo tramite Wi-Fi giorno + h min s + rimanenti Oggi Ieri + Avvisa quando si aprono link esterni + Mostra un avviso in merito a possibili costi aggiuntivi o al mancato funzionamento dei link in assenza di connessione. + Apertura di un link esterno! + Stai aprendo un link esterno. Ciò potrebbe comportare dei costi aggiuntivi per il trasferimento dati e non funzionerà se non sei connesso a Internet. Vuoi continuare? + Non chiedere più Lingue selezionate: Altre lingue: - Dettagli dispositivo + Nessun elemento disponibile + Oops… questo è imbarazzante + Sembra che si sia verificato un arresto anomalo.\n\nTi dispiacerebbe aiutarci a risolvere questo problema inviandoci le seguenti informazioni? + Impostazioni della lingua + Una lista dei tuoi file ZIM + Dettagli dell\'arresto anomalo + Log dell\'applicazione + Dettagli sul dispositivo + INVIA DETTAGLI + Scorciatoia non disponibile Nuova scheda + Ottieni contenuti Favicon %s voci + Inizia + Scarica libri + Il sapere del genere umano, sul tuo dispositivo. + Benvenuto + Salva libri offline + Scarica libri e leggili ovunque tu sia. + Impossibile aggiungere la voce ai segnalibri + Vai alla pagina precedente + Vai alla pagina successiva Indice + Seleziona lingue + Salva lingue + Invia feedback + Espandi + Cronologia + Mostra la cronologia di tutti i libri + Cerca nella cronologia + %1$d selezionato/i + Mostra i segnalibri di tutti i libri + Cerca nei segnalibri + Cambia scheda + Chiudi tutte le schede + In attesa + In corso + Completato + In pausa + Fallito: %s Salva - DISPOSITIVI VICINI + Nota + Titolo della voce + L\'accesso allo spazio di archiviazione è richiesto per poter aggiungere note + Le note non possono essere salvate senza l\'accesso allo spazio di archiviazione + Salvataggio della nota fallito + Nota eliminata correttamente + La nota non è stata eliminata + Nota salvata + Errore durante il salvataggio della nota: lo spazio di archiviazione non è accessibile in scrittura + Il file della nota non esiste + Condividi il file della nota con: + Vuoi scartare le modifiche non salvate? + Vuoi eliminare tutte le note? + Errore: accesso allo spazio di archiviazione non consentito + Tutte le note sono state eliminate + Alcune note non sono state eliminate + %d libro/i + Ricerca iniziata + Ricerca fallita + Errore grave rilevato! Prova a disabilitare e a riabilitare Wi-Fi Direct + Connessione fallita + L\'accesso alla posizione è richiesto da Android per consentire all\'app di rilevare i dispositivi nelle vicinanze + L\'accesso alla posizione è richiesto da Android per consentire all\'app di ospitare file ZIM + Impossibile cercare i dispositivi nelle vicinanze senza l\'accesso alla posizione + Impossibile accedere ai file ZIM senza l\'accesso allo spazio di archiviazione + Abilita la geolocalizzazione per poter cercare i dispositivi nelle vicinanze + Impossibile cercare i dispositivi nelle vicinanze senza i servizi di geolocalizzazione + Abilita Wi-Fi Direct nelle impostazioni di sistema + Il Wi-Fi dev\'essere abilitato per poter cercare i dispositivi nelle vicinanze + Vuoi trasferire i file a %s? + Il dispositivo selezionato non consente il trasferimento + Trasferimento file completato + Si è verificato un errore durante il trasferimento + Errore durante il trasferimento del file %s + Ottieni contenuti da un dispositivo nelle vicinanze + Cerca dispositivi nelle vicinanze + Il tuo dispositivo: + DISPOSITIVI NELLE VICINANZE + Nessun dispositivo rilevato. Tocca il pulsante Cerca per provare di nuovo. + FILE DA TRASFERIRE + Preparazione dei file per il trasferimento… + Handshake in corso… Stato + Cancella le note su tutte le voci + Cancella tutte le note + Autorizzazione a leggere e scrivere i file ZIM sulla scheda SD + Aumenta o diminuisci la dimensione del testo del 25% alla volta. + Immagini + Video + Solo testo Testo breve + Accesso allo spazio di archiviazione negato + Quest\'app richiede l\'accesso in lettura allo spazio di archiviazione per poter funzionare. Concedi l\'autorizzazione nelle impostazioni Vai alle impostazioni hotspot Nessun risultato Nessun segnalibro - Cancellare tutta la cronologia? - Cancellare tutti i segnalibri? + Cronologia vuota + Predefinita del dispositivo + Vuoi cancellare tutta la cronologia? + Vuoi cancellare le voci della cronologia selezionate? + Vuoi cancellare tutti i segnalibri? + Vuoi cancellare i segnalibri selezionati? Attivata Disattivata Automatica + Invia report di diagnostica + Dettagli sul file system + Report di diagnostica + Invia tutti i seguenti dettagli per aiutarci a identificare il problema + %d%% + Dimensione del testo Apri in una nuova scheda Lettore - Come aggiornare il contenuto? + Nessun libro aperto + Apri libreria + Scheda ripristinata + Apri menù laterale + Chiudi menù laterale + Come aggiornare i contenuti? + Per aggiornare un contenuto (un file ZIM), devi scaricare l\'ultima versione completa di quello stesso contenuto. Puoi farlo nella sezione Scarica. + Accesso a tutti i file richiesto + Per poter accedere ai file ZIM sul dispositivo, è necessario fornire all\'applicazione l\'accesso a tutti i file + Consentita + Non consentita diff --git a/core/src/main/res/values-iw/strings.xml b/core/src/main/res/values-iw/strings.xml index a6af58de8..366d215cc 100644 --- a/core/src/main/res/values-iw/strings.xml +++ b/core/src/main/res/values-iw/strings.xml @@ -73,12 +73,13 @@ השפה של הדף הזה אינה נתמכת, או שלא הותקנו נתוני שפה מתאימים. ייתכן שהערך לא יהיה קריא. לא נמצאה אפליקציה מותקנת עבור סוג הקובץ הזה לא נמצאו כותרות תוכן - על מנת לגשת לתכנים לא-מקוונים אנחנו צריכים לגשת לאחסון שלך + כדי לגשת לתכנים לא־מקוונים אנחנו צריכים גישה לאחסון שלך למחוק את היסטוריית החיפוש ולאפס את כל הלשוניות הפעילות? למחוק את הפריט הזה? ניקוי ההיסטוריה ניקוי מילות חיפוש קודמות והיסטוריית כרטיסיות הערות + הרשאות כל ההיסטוריה נמחקה ניקוי סימניות לנקות את כל ההיסטוריה? @@ -253,6 +254,7 @@ מצב ניקוי כל ההערות בכל הערכים ניקוי כל ההערות + לאפשר לקרוא ולכתוב קובצי ZIM על כרטיס SD לשנות את גודל הטקסט בקפיצות של 25%. תמונה סרטון @@ -287,4 +289,8 @@ סגירת מגירה איך לעדכן תוכן? כדי לעדכן תוכן (קובץ zim) עליך להוריד את הגרסה המלאה העדכנית ביותר של אותו התוכן בדיוק. ניתן לעשות זאת דרך סעיף ההורדה. + דרושים כל הרשאות הקבצים + כדי לגשת לכל קובצי ה־zim במכשיר, אנחנו זקוקים להרשאת כל הקבצים + מותר + אסור diff --git a/core/src/main/res/values-kn/strings.xml b/core/src/main/res/values-kn/strings.xml index 0a3034bb5..d28d1a9c7 100644 --- a/core/src/main/res/values-kn/strings.xml +++ b/core/src/main/res/values-kn/strings.xml @@ -19,5 +19,6 @@ ಆವೃತ್ತಿ ಭಾಷೆ ಭಾಷೆ ಆಯ್ದುಕೊಳ್ಳಿ + ಅಳಿಸು ಗ್ರಂಥಾಲಯ diff --git a/core/src/main/res/values-ko/strings.xml b/core/src/main/res/values-ko/strings.xml index bb773cbbf..447995be4 100644 --- a/core/src/main/res/values-ko/strings.xml +++ b/core/src/main/res/values-ko/strings.xml @@ -49,6 +49,7 @@ 서버 시작 중 도서 호스팅 지침 WiFi 연결 감지됨 + 다른 장치에서 책을 보려면 모든 장치가 동일한 와이파이 네트워크에 연결되어 있어야 합니다. 이 기능이 작동하려면, 와이파이 핫스팟을 수동으로 활성화하거나 호스트 장치와 수신 장치가 동일 와이파이 네트워크에 있어야 합니다 계속 당신의 핫스팟/서버 상태의 업데이트 @@ -56,6 +57,7 @@ 서버 시작 서버 정지 %s 서버에 접속하려면 브라우저에 이 IP 주소를 입력하십시오 + 다른 애플리케이션을 통해 URL 공유 오류: 선택된 ZIM 파일을 찾을 수 없습니다. zim 파일을 열 수 없음 오류: 선택한 파일은 올바른 ZIM 파일이 아닙니다. @@ -79,6 +81,8 @@ 이 항목을 지우겠습니까? 기록 지우기 최근 검색 및 탭 기록 지우기 + 참고 + 권한 모든 기록을 삭제했습니다 북마크 삭제 모든 기록을 지우겠습니까? @@ -230,6 +234,7 @@ 서버 오류! 와이파이 P2P를 비활성화/재활성화해 보십시오 연결 실패 안드로이드에서 앱의 피어 장치 찾기를 허용하려면 위치 권한이 필요합니다 + 안드로이드에서 앱의 Zim 파일 호스팅을 허용하려면 위치 권한이 필요합니다 위치 권한 없이 피어 장치를 찾을 수 없습니다 스토리지 권한 없이 zim 파일에 접근할 수 없습니다 친구를 찾기 위해 위치 접근을 활성화합니다 @@ -252,6 +257,8 @@ 상태 모든 문서의 모든 노트 지우기 모든 노트 지우기 + SD 카드의 ZIM 파일의 읽기 및 쓰기를 허용합니다 + 문자 크기를 25% 증가시킵니다. 사진 비디오 텍스트만 @@ -277,4 +284,16 @@ %d%% 글자 크기 조정 새 탭으로 열기 + 리더 + 열린 책 없음 + 라이브러리 열기 + 탭 복원됨 + 서랍 열기 + 서랍 닫기 + 어떻게 콘텐츠를 업데이트합니까? + 콘텐츠(zim 파일)을 업데이트하려면 매우 동일한 콘텐츠의 최신판 전체를 다운로드해야 합니다. 다운로드 부분에서 해당 작업을 할 수 있습니다. + 모든 파일 권한 필요 + 장치의 모든 ZIM 파일에 접근하려면 모든 파일 권한이 있어야 합니다 + 허용됨 + 허용하지 않음 diff --git a/core/src/main/res/values-ku/strings.xml b/core/src/main/res/values-ku/strings.xml index fe8fc9937..409883c69 100644 --- a/core/src/main/res/values-ku/strings.xml +++ b/core/src/main/res/values-ku/strings.xml @@ -248,7 +248,7 @@ Rewş Hemû notan ji hemû gotaran bibe Temamiya notan paqij bike - Mezinahiya nivîsê bi bilindkirinên 25\% biguherîne. + Mezinahiya nivîsê bi bilindkirinên 25% biguherîne. Wêne Vîdeo Tenê Nivîs diff --git a/core/src/main/res/values-lb/strings.xml b/core/src/main/res/values-lb/strings.xml index c02d42649..7b88f035f 100644 --- a/core/src/main/res/values-lb/strings.xml +++ b/core/src/main/res/values-lb/strings.xml @@ -40,6 +40,7 @@ Auteuren a Lizenzen Dëst Element läschen? Notizen + Autorisatiounen Lieszeechen ewechhuelen Läschen Ofbriechen @@ -124,4 +125,6 @@ Lieser Tirang opmaachen Tirang zoumaachen + Erlaabt + Net erlaabt diff --git a/core/src/main/res/values-lv/strings.xml b/core/src/main/res/values-lv/strings.xml index 01b8647d8..8dfd5ff88 100644 --- a/core/src/main/res/values-lv/strings.xml +++ b/core/src/main/res/values-lv/strings.xml @@ -1,6 +1,7 @@ @@ -12,6 +13,7 @@ Nejaušs raksts Pilnekrāna režīms Iziet no pilnekrāna + Atbalstiet Kiwix Meklēt Displejs Informācija diff --git a/core/src/main/res/values-mg/strings.xml b/core/src/main/res/values-mg/strings.xml index 56a3629d8..116397dd3 100644 --- a/core/src/main/res/values-mg/strings.xml +++ b/core/src/main/res/values-mg/strings.xml @@ -35,6 +35,7 @@ Tsy nahita fampiaharana napetraka ho an\'ity karazan-drakitra ity Tsy misy loham-botoatiny hita Mila ny toeram-pitahirizanao izahay raha hamaky rakitra ZIM + Alalana Mari-boky nampiana Omeo naoty izahay azafady Raha tianao ny mampiasa @@ -46,4 +47,6 @@ Rehefa manokatra vakizoro dia hosokafany any aoriana Tahirim-boky Tsy misy marika + Mahazo alalana + Tsy mahazo alalana diff --git a/core/src/main/res/values-mk/strings.xml b/core/src/main/res/values-mk/strings.xml index b710356ae..19122ebf5 100644 --- a/core/src/main/res/values-mk/strings.xml +++ b/core/src/main/res/values-mk/strings.xml @@ -71,6 +71,7 @@ Исчисти историја Исчисти скорешни пребарувања и јазичиња Белешки + Дозволи Сета историја е исчистена Исчисти обележувачи Да ја исчистам сета историја @@ -245,6 +246,7 @@ Состојба Ги чисти сите белешки на сите статии Исчисти ги сите белешки + Дозволи читање и запишување на ZIM-податотеки на SD-картичка Промени големина на текст во стапки од 25 %. Слика Видео @@ -279,4 +281,8 @@ Затвори фиока Како се подновува содржината? За да ја подновите содржината (ZIM-поатотека) ќе треба да ја преземете последната полна верзија на истава содржина. Ова се прави во одделот за преземање. + Дозвола за сите податотеки + За да имате пристап до сите ZIM-податотеки на уредот, ќе треба да ја имате дозволата за сите податотеки + Дозволено + Не е дозволено diff --git a/core/src/main/res/values-my/strings.xml b/core/src/main/res/values-my/strings.xml index 4ed29346e..95d473b5e 100644 --- a/core/src/main/res/values-my/strings.xml +++ b/core/src/main/res/values-my/strings.xml @@ -3,6 +3,7 @@ * Dr Lotus Black * Lionslayer * Ninjastrikers +* SawJaemin * Teitei --> @@ -22,6 +23,13 @@ ရှာဖွေရန် အကြောင်းအရာဖိုင်တစ်ခုကို ရွေးချယ်ပါ (*.zim) တဘ်အသစ်မှာ လင့်ကိုဖွင့်မလား။ + ဆာဗာ မစတင်နိုင်ခဲ့ပါ။ + ဆာဗာ အောင်မြင်စွာ စတင်ခဲ့သည်။ + ဆာဗာ အောင်မြင်စွာ ရပ်တန့်ခဲ့သည်။ + ဆာဗာ စတင်ခြင်း + ဝိုင်ဖိုင် ကွန်နက်ရှင် ခြေရာခံမိသည် + ဆာဗာ စတင်ရန် + ဆာဗာ ရပ်တန့်ရန် အမှားသတိပေးချက် − ရွေးချယ်ထားသော ZIM ဖိုင်ကို ရှာမတွေ့ပါ။ အမှားသတိပေးချက် − ရွေးချယ်ထားသောဖိုင်သည် တရားဝင် ZIM ဖိုင် မဟုတ်ပါ။ အမှားသတိပေးချက် − (Url: %1$s) ဆောင်းပါးထည့်သွင်းခြင်း မအောင်မြင်ပါ။ @@ -39,11 +47,13 @@ ဤဟာကို ဖျက်မည်လား မှတ်တမ်းအားရှင်းမည် မှတ်စုများ + ခွင့်ပြုချက်များ ရာဇဝင်အားလုံး ရှင်းလင်းပြီး မှတ်သားထားသော စာအုပ်များကိုဖျက်ပါ မှတ်တမ်းများအားလုံး ရှင်းလင်းရန် မျှဝေ ဖျက် + မလုပ်တော့ပါ မကြာမီက ရှာဖွေမှုကို ဖယ်ရှားပြီးပြီ ရပြီဟေ့ သင်သိပါသလား @@ -59,6 +69,7 @@ ဖိုင် ဖျက်ပြီးပြီ ဤနေရာတွင် ဖိုင်များမရှိပါ ဤဖိုင်ကို ဒေါင်းလုပ်ရယူရန် နေရာလွတ် မလုံလောက်ပါ။ + ဒေါင်းလုဒ် နေရာလွတ် ရရှိနိုင်မှု- ရိုးရိုး ပုံများ မရှိပါ @@ -68,10 +79,14 @@ သိုလှောင်ခန်း လက်ရှိ ဖိုလ်ဒါ ခေတ္တရပ် + ခေတ္တရပ်နားရာမှ ပြန်လုပ်ရန် ရပ် + အတွင်းပိုင်း ပြင်ပ ဟုတ်ကဲ့ မလုပ်ပါ + ဒေါင့်လုဒ် ရပ်တန့်မှာလား + ဤဒေါင်းလုဒ်ကို ရပ်တန့်ချင်သည်မှာ သေချာပါသလား ရှေ့ ယခင် မိုလ်ဘိုင်းကွန်ရက်မှ အကြောင်းအရာကို ဒေါင်းလုတ်ဆွဲရန် ခွင့်ပြုမည်လော? @@ -88,13 +103,28 @@ အခြားဘာသာစကားများ သင်၏ ဘာသာစကား အပြင်အဆင်များ %s ဆောင်းပါးများ + စတင်ပါ ယခင်စာမျက်နှာသို့သွားရန် နောက်စာမျက်နှာသို့သွားရန် မာတိကာ ချဲ့ရန် ရာဇဝင် စာအုပ်များအားလုံးမှ မှတ်သားထားသော စာအုပ်များကိုကြည့်ရန် + ဆိုင်းငံ့နေသည် + လုပ်ဆောင်နေဆဲ + ပြီးဆုံးသည် + ခေတ္တရပ်ပြီး + သိမ်းရန် + မှတ်စု + ဝီကီဆောင်းပါးခေါင်းစဉ် + ကွန်နက်ရှင် မအောင်မြင်ပါ + အနီးအနား စက်ပစ္စည်းများ ရလဒ်များ မရှိပါ စာညှပ်မှတ်ထားခြင်း မရှိ! ရာဇဝင် မရှိ + ဖွင့် + ပိတ် + အလိုအလျောက် + ခွင့်ပြုပြီး + ခွင့်မပြုပါ diff --git a/core/src/main/res/values-nb/strings.xml b/core/src/main/res/values-nb/strings.xml index 1426a51c7..6b05c2610 100644 --- a/core/src/main/res/values-nb/strings.xml +++ b/core/src/main/res/values-nb/strings.xml @@ -5,7 +5,7 @@ * Jon Harald Søby * SuperPotato --> - + Hjelp Hjem Innstillinger @@ -16,9 +16,9 @@ Avslutt fullskjerm Les høyt Stopp høytlesning - Lagre media som… + Lagre media som… En feil oppstod under lagring av mediet! - Lagret media som %1$s i din bildemappe. + Lagret media som %1$s i din bildemappe. Søk Velg en ZIM-innholdsfil (*.zim) Åpne lenke i ny fane? diff --git a/core/src/main/res/values-pl/strings.xml b/core/src/main/res/values-pl/strings.xml index 0a6d96861..9bee6b663 100644 --- a/core/src/main/res/values-pl/strings.xml +++ b/core/src/main/res/values-pl/strings.xml @@ -57,6 +57,7 @@ Uruchom serwer Zatrzymaj serwer Wpisz ten adres IP w przeglądarce, aby uzyskać dostęp do serwera %s + Udostępnij adres URL za pośrednictwem innych aplikacji Błąd: Wybrany plik ZIM nie został znaleziony. Nie można otworzyć pliku zim Błąd: Wybrany plik nie jest prawidłowym plikiem ZIM. diff --git a/core/src/main/res/values-pt-rBR/strings.xml b/core/src/main/res/values-pt-rBR/strings.xml index 96d3cf020..9ff5210e6 100644 --- a/core/src/main/res/values-pt-rBR/strings.xml +++ b/core/src/main/res/values-pt-rBR/strings.xml @@ -77,6 +77,7 @@ Apagar histórico Limpar pesquisas recentes e histórico de guias Notas + Permissões Eliminando todo o histórico Limpar marcadores Limpar todo o histórico? @@ -285,4 +286,6 @@ Fechar gaveta Como atualizar o conteúdo? Para atualizar o conteúdo (um arquivo zim), você precisa baixar a versão completa mais recente desse mesmo conteúdo. Você pode fazer isso através da seção de download. + Permitido + Não permitido diff --git a/core/src/main/res/values-qq/strings.xml b/core/src/main/res/values-qq/strings.xml index 245d0b7e2..50685409d 100644 --- a/core/src/main/res/values-qq/strings.xml +++ b/core/src/main/res/values-qq/strings.xml @@ -1,7 +1,9 @@ วิธีใช้ @@ -16,13 +17,18 @@ สุ่มบทความ เต็มหน้าจอ ออกจากโหมดเต็มหน้าจอ + อ่านออกเสียง + หยุดอ่าน สนับสนุน Kiwix บันทึกสื่อ เกิดข้อผิดพลาดเมื่อพยายามบันทึกสื่อ! ค้นหา เลือกไฟล์เนื้อหา (*.zim) ต้องการเปิดลิงก์ในแท็บใหม่หรือไม่ + กรุณาเลือกหน้งสือก่อน + ดำเนินการต่อ ข้อผิดพลาด:ไม่พบไฟล์ ZIM ที่เลือก + ไม่สามารถเปิดไฟล์ zim ได้ ข้อผิดพลาด:ไฟล์ที่เลือกไม่ได้เป็นไฟล์ ZIM ที่ถูกต้อง ข้อผิดพลาด:ไม่สามารถดาวน์โหลดบทความได้ (URL:%1$s) แสดงผล @@ -31,26 +37,49 @@ โหมดกลางคืน แสดงบทความด้วยสีที่สลับกัน กลับไปด้านบน + เพิ่มปุ่มด้านล่างของหน้าสำหรับเลื่อนกลับสู่ด้านบน ภาษา เลือกภาษา + เครดิต คุณแน่ใจหรือไม่ว่าต้องการที่จะลบประวัติการค้นหาทั้งหมดและรีเซ็ตแท็บที่ใช้งานอยู่ทั้งหมด? ลบสิ่งนี้เลยหรือไม่? + ล้างประวัติ + ล้างการค้นหาล่าสุดและประวัติการเข้าถึงแท็บ ลบประวัติทั้งหมดแล้ว - ลบประวัติทั้งหมด + ลบประวัติทั้งหมด? + แชร์ + แชร์ไฟล์ ZIM กับ: ลบ + ยกเลิก ลบการค้นหาล่าสุดแล้ว + คุณสามารถปัดไปทางซ้ายเพื่อดูเนื้อหาของบทความนี้ เข้าใจแล้ว คุณรู้หรือไม่? + เลิกทำ + เปิดแท็บแล้ว เพิ่มบุ๊คมาร์คแล้ว โปรดให้คะแนนเรา + ถ้าคุณชอบใช้ + ได้โปรดสละเวลาสักเล็กน้อยเพื่อให้คะแนน ขอบคุณที่สนับสนุนเรา! + ให้คะแนน ไม่ ขอบคุณ ทีหลัง ลบบุ๊คมาร์คแล้ว รายการ - พื้นที่ไม่เพียงพอในการดาวน์โหลดไฟล์นี้ + ไม่พบไฟล์ที่นี่ + พื้นที่ไม่เพียงพอสำหรับดาวน์โหลด + ดาวน์โหลด + เนื้อที่ที่ว่าง: + ไม่มีรูปภาพ + ไม่มีวิดีโอ + ไม่มีการเชื่อมต่อเครือข่าย คุณสามารถดาวน์โหลดไฟล์ ZIM ที่คุณเลือกในแอพหรือเลือกไฟล์ที่คุณต้องการและดาวน์โหลดจากคอมพิวเตอร์เดสก์ท็อปอย่างระมัดระวังก่อนที่จะถ่ายโอนไฟล์ ZIM ไปยังเอสดีการ์ดของคุณ การดาวน์โหลดไฟล์ ZIM ในแอพจะอยู่ในไดเรกทอรีจัดเก็บข้อมูลภายนอกในโฟลเดอร์ชื่อ Kiwix - ขออภัยเราไม่สามารถลบไฟล์นี้ คุณควรลองใช้โปรแกรมจัดการไฟล์แทน + โฟลเดอร์ปัจจุบัน + ขออภัย เราไม่สามารถลบไฟล์บางชิ้น คุณควรลองใช้โปรแกรมจัดการไฟล์แทน + หยุดชั่วคราว + ทำต่อ + หยุด ภายนอก หยุดดาวน์โหลดหรือไม่? คุณแน่ใจหรือไม่ว่าต้องการหยุดดาวน์โหลดนี้? @@ -58,4 +87,12 @@ กำลังเข้าสู่ลิงค์ภายนอก คุณกำลังป้อนลิงก์ภายนอก ซึ่งอาจทำให้มีค่าใช้จ่ายเพิ่มเติมสำหรับการถ่ายโอนข้อมูลหรือจะไม่ทำงานเมื่อคุณออฟไลน์ คุณต้องการดำเนินการต่อหรือไม่? อย่าถามอีก + ไปยังหน้าก่อนหน้านี้ + ไปยังหน้าถัดไป + สารบัญ + เลือกภาษา + บันทึก + ส่งคำติชม + ขยาย + ประวัติ diff --git a/core/src/main/res/values-tr/strings.xml b/core/src/main/res/values-tr/strings.xml index 85a6b9b09..c55d3d2ea 100644 --- a/core/src/main/res/values-tr/strings.xml +++ b/core/src/main/res/values-tr/strings.xml @@ -3,6 +3,7 @@ * 1917 Ekim Devrimi * Alidemirtas * BaRaN6161 TURK +* Can * Captantrips * Grkn gll * Hedda @@ -27,21 +28,21 @@ Yüksek sesle oku Yüksek sesle okumayı sonlandır Kiwix\'i destekle - Ana Kitaplar + WiFi erişim paylaşımı alanı Ortam dosyasını kaydet Medya kaydedilmeye çalışılırken bir hata oluştu! - Medyayı %s olarak şuraya kaydet Android/media/org.kiwix…/ + Medyayı %s olarak şuraya kaydet: Android/media/org.kiwix…/ Ara Bir İçerik Dosyası seçin (*.zim) Bağlantı yeni sekmede açılsın mı? Hotspot Hizmet Kanalı - Sıcak nokta başlatılamadı + Erişim paylaşım alanı başlatılamadı Etkin noktanız zaten açıkmış gibi görünüyor. Devam etmek için lütfen wifi erişim noktanızı devre dışı bırakın. WIFI ayarlarına gidin Bağlantı reddedildi. - Sıcak Noktayı Çalıştırılıyor + WiFi Erişim Paylaşım Alanı Çalıştırılıyor Lütfen önce kitapları seçin - Sunucu başlatılamadı. Lütfen etkin noktanızı açın + Sunucu başlatılamadı. Lütfen WiFi erişim paylaşım alanınızı açın Sunucu başlatılamadı. Sunucu başarıyla başladı. Sunucu başarıyla durduruldu. @@ -84,6 +85,7 @@ Geçmişi temizle Son aramalar ve sekmeler geçmişini temizle Notlar + İzinler Tüm geçmiş temizlendi Yer imlerini temizle Tüm Geçmişi Silinsin mi? @@ -258,6 +260,7 @@ Durum Tüm makalelerdeki tüm notları temizler Tüm notları temizle + SD karttaki ZIM dosyalarını okumaya ve yazmaya izin ver Metin boyutunu %25\'lik artışlarla değiştirin. Resim Video @@ -292,4 +295,8 @@ Çekmeceyi Kapat İçerik nasıl güncellenir? İçeriği (bir zim dosyası) güncellemek için, aynı içeriğin en son sürümünü indirmeniz gerekir. Bunu indirme bölümünden yapabilirsiniz. + Tüm Dosyalar İzni Gereklidir + Cihaz içindeki tüm zim dosyalara erişmek için Tüm Dosyalar İzni\'ne ihtiyacımız var + İzin verildi + İzin verilmedi diff --git a/core/src/main/res/values-uk/strings.xml b/core/src/main/res/values-uk/strings.xml index 219a7b70d..40b09149c 100644 --- a/core/src/main/res/values-uk/strings.xml +++ b/core/src/main/res/values-uk/strings.xml @@ -80,6 +80,7 @@ Очистити історію Очистити останню історію пошуку й відкритих вкладок Примітки + Дозволи Всю історію очищено Видалити закладки Очистити всю історію? @@ -254,7 +255,8 @@ Статус Очистити всі нотатки в усіх статтях Очистити всі нотатки - Змінити розмір тексту з 25\%-відсотковим кроком. + Дозволяє читати і записувати ZIP-файли на SD-карту + Змінити розмір тексту з 25%-відсотковим кроком. Зображення Відео Тільки текст @@ -288,4 +290,8 @@ Закрити редактор Як оновити вміст? Щоб оновити вміст (zim-файл), вам треба завантажити повну найсвіжішу версію цього самого вмісту. Ви можете зробити це у розділі завантажень. + Потрібний дозвіл на всі файли + Щоб отримати доступ до всіх файлів zim на пристрої, нам потрібно мати дозвіл на всі файли + Дозволено + Не дозволено diff --git a/core/src/main/res/values-zh-rTW/strings.xml b/core/src/main/res/values-zh-rTW/strings.xml index 51bed6367..b68e05c90 100644 --- a/core/src/main/res/values-zh-rTW/strings.xml +++ b/core/src/main/res/values-zh-rTW/strings.xml @@ -5,6 +5,7 @@ * Liuxinyu970226 * Macofe * Reke +* Weather Top Wizard * Wehwei --> @@ -76,6 +77,7 @@ 清除歷史記錄 清除近期搜尋和分頁歷史記錄 備註 + 權限 所有歷史記錄已清除 清除書籤 清除所有歷史記錄? @@ -250,6 +252,7 @@ 狀態 清除在所有條目裡的所有註解 清除所有註釋 + 允許讀寫 ZIM 檔案在 SD 卡裡 以 25% 更改文字大小 圖片 影片 @@ -284,4 +287,8 @@ 關閉抽屜 如何更新內容? 要更新內容(zim 檔案)的話,您需要下載這個相似內容的完整最新版本。您可以透過下載段落來進行。 + 所有檔案需要允許權限 + 為了能在其它設備上存取 ZIM 檔案,我們需要所有檔案允許權限 + 允許 + 不允許 diff --git a/custom/src/main/res/values-bn/strings.xml b/custom/src/main/res/values-bn/strings.xml deleted file mode 100644 index 0f138d61e..000000000 --- a/custom/src/main/res/values-bn/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/custom/src/main/res/values-eo/strings.xml b/custom/src/main/res/values-eo/strings.xml deleted file mode 100644 index 549ebc2fe..000000000 --- a/custom/src/main/res/values-eo/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/custom/src/main/res/values-eu/strings.xml b/custom/src/main/res/values-eu/strings.xml deleted file mode 100644 index 6575bcae5..000000000 --- a/custom/src/main/res/values-eu/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/custom/src/main/res/values-b+tg+Cyrl/strings.xml b/custom/src/main/res/values-my/strings.xml similarity index 52% rename from custom/src/main/res/values-b+tg+Cyrl/strings.xml rename to custom/src/main/res/values-my/strings.xml index fdfbe4924..b318c850e 100644 --- a/custom/src/main/res/values-b+tg+Cyrl/strings.xml +++ b/custom/src/main/res/values-my/strings.xml @@ -1,6 +1,7 @@ + ပြန်လုပ် diff --git a/custom/src/main/res/values-qq/strings.xml b/custom/src/main/res/values-qq/strings.xml deleted file mode 100644 index b3d229d76..000000000 --- a/custom/src/main/res/values-qq/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/custom/src/main/res/values-sk/strings.xml b/custom/src/main/res/values-sk/strings.xml index 6308099f3..3add7ef91 100644 --- a/custom/src/main/res/values-sk/strings.xml +++ b/custom/src/main/res/values-sk/strings.xml @@ -3,4 +3,6 @@ * Yardom78 --> + Skúsiť znova + Neplatná inštalácia. Prosím stiahnite zim.\nUistite sa, že WiFi je zapnuté a že máte dostatok voľného priestoru diff --git a/custom/src/main/res/values-smn/strings.xml b/custom/src/main/res/values-smn/strings.xml deleted file mode 100644 index 6fa7c3b54..000000000 --- a/custom/src/main/res/values-smn/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/custom/src/main/res/values-sms/strings.xml b/custom/src/main/res/values-sms/strings.xml deleted file mode 100644 index 6fa7c3b54..000000000 --- a/custom/src/main/res/values-sms/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - diff --git a/custom/src/main/res/values-sq/strings.xml b/custom/src/main/res/values-sq/strings.xml new file mode 100644 index 000000000..ca68c3ca8 --- /dev/null +++ b/custom/src/main/res/values-sq/strings.xml @@ -0,0 +1,8 @@ + + + + Riprovo + Instalim i Pavlefshëm. Ju lutemi, Shkarkoni Zim-in.\n Sigurohuni se WiFi është i hapur dhe se keni hapësirë të mjaftueshme + diff --git a/custom/src/main/res/values-zh/strings.xml b/custom/src/main/res/values-zh/strings.xml deleted file mode 100644 index b2b7ff0ba..000000000 --- a/custom/src/main/res/values-zh/strings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - From 5f60cf7a876dd136c1248e404e27697242583ba0 Mon Sep 17 00:00:00 2001 From: Gouri Panda Date: Fri, 28 Jan 2022 15:02:14 +0530 Subject: [PATCH 27/29] lint fix --- core/src/main/res/values-de/strings.xml | 2 +- core/src/main/res/values-it/strings.xml | 4 ++-- core/src/main/res/values-ku/strings.xml | 2 +- core/src/main/res/values-nb/strings.xml | 6 +++--- core/src/main/res/values-qq/strings.xml | 4 +--- core/src/main/res/values-sk/strings.xml | 6 +++--- 6 files changed, 11 insertions(+), 13 deletions(-) diff --git a/core/src/main/res/values-de/strings.xml b/core/src/main/res/values-de/strings.xml index 01a3e591e..c28c0c850 100644 --- a/core/src/main/res/values-de/strings.xml +++ b/core/src/main/res/values-de/strings.xml @@ -259,7 +259,7 @@ Status Löscht alle Notizen zu allen Artikeln Alle Notizen löschen - Schriftgröße in 25%-Schritten ändern. + Schriftgröße in 25\%-Schritten ändern. Bild Video Nur Text diff --git a/core/src/main/res/values-it/strings.xml b/core/src/main/res/values-it/strings.xml index b6f3341fc..dc0294bdd 100644 --- a/core/src/main/res/values-it/strings.xml +++ b/core/src/main/res/values-it/strings.xml @@ -153,7 +153,7 @@ Successivo Precedente Vuoi scaricare il contenuto usando le reti mobili? - Se scegli \"Sì\", non verrai più avvisato in futuro. Potrai comunque modificare questo comportamento nelle Impostazioni. + Se scegli \“Sì\”, non verrai più avvisato in futuro. Potrai comunque modificare questo comportamento nelle Impostazioni. Scarica contenuti solo tramite Wi-Fi giorno h @@ -257,7 +257,7 @@ Cancella le note su tutte le voci Cancella tutte le note Autorizzazione a leggere e scrivere i file ZIM sulla scheda SD - Aumenta o diminuisci la dimensione del testo del 25% alla volta. + Aumenta o diminuisci la dimensione del testo del 25\% alla volta. Immagini Video Solo testo diff --git a/core/src/main/res/values-ku/strings.xml b/core/src/main/res/values-ku/strings.xml index 409883c69..fe8fc9937 100644 --- a/core/src/main/res/values-ku/strings.xml +++ b/core/src/main/res/values-ku/strings.xml @@ -248,7 +248,7 @@ Rewş Hemû notan ji hemû gotaran bibe Temamiya notan paqij bike - Mezinahiya nivîsê bi bilindkirinên 25% biguherîne. + Mezinahiya nivîsê bi bilindkirinên 25\% biguherîne. Wêne Vîdeo Tenê Nivîs diff --git a/core/src/main/res/values-nb/strings.xml b/core/src/main/res/values-nb/strings.xml index 6b05c2610..1426a51c7 100644 --- a/core/src/main/res/values-nb/strings.xml +++ b/core/src/main/res/values-nb/strings.xml @@ -5,7 +5,7 @@ * Jon Harald Søby * SuperPotato --> - + Hjelp Hjem Innstillinger @@ -16,9 +16,9 @@ Avslutt fullskjerm Les høyt Stopp høytlesning - Lagre media som… + Lagre media som… En feil oppstod under lagring av mediet! - Lagret media som %1$s i din bildemappe. + Lagret media som %1$s i din bildemappe. Søk Velg en ZIM-innholdsfil (*.zim) Åpne lenke i ny fane? diff --git a/core/src/main/res/values-qq/strings.xml b/core/src/main/res/values-qq/strings.xml index 50685409d..0649a6c6b 100644 --- a/core/src/main/res/values-qq/strings.xml +++ b/core/src/main/res/values-qq/strings.xml @@ -41,7 +41,6 @@ {{Identical|No thanks}} {{Identical|Later}} {{Identical|Open}} - The placeholder refers to the app name (\"Kiwix\") Displayed in application menu The title of the fragment/place where books are downloaded. {{Identical|Stop}} @@ -57,9 +56,8 @@ TODO: Unclear, must be documented. See https://github.com/kiwix/overview/issues/31 {{Identical|Save}} {{Identical|Note}} - {{Identical|Book}} Tell the user Location permission required for hosting zim file. - Tell the user that this preference changes the text size in 25% increments. + Tell the user that this preference changes the text size in 25\% increments. This is used in the start server dialog and leads the user to mobile hotspot settings when pressed This means \"there are no bookmarks\" Ask if the user wants to delete all history items. diff --git a/core/src/main/res/values-sk/strings.xml b/core/src/main/res/values-sk/strings.xml index c6eb9be4e..e738441b0 100644 --- a/core/src/main/res/values-sk/strings.xml +++ b/core/src/main/res/values-sk/strings.xml @@ -163,7 +163,7 @@ Vybrané jazyky: Iné jazyky: Žiadne dostupné položky - Hm...Toto je trápne + Hm…Toto je trápne Vyzerá to tak, že sme aplikácia zlyhala.\n\nNevadilo by Vám pomôcť nám opraviť tento problém tým, že nám zašlete nasledovné informácie? Vaše jazykové nastavenia Zoznam Vašich súborov ZIM @@ -244,8 +244,8 @@ BLÍZKE ZARIADENIA Nenašli sa žiadne zariadenia. Kliknite na tlačítko hľadania a skúste znova. SÚBORY NA PRENOS - Pripravovanie súborov na prenos... - Prebieha párovanie... + Pripravovanie súborov na prenos… + Prebieha párovanie… Stav Vymazať všetky poznámky na všetkých článkoch Vymazať všetky poznámky From 21da4edaafb535a4205d60ca68d3dd3e402ff68e Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 30 Jan 2022 16:35:45 +0100 Subject: [PATCH 28/29] Bump-up version to 3.4.5 --- app/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5c1bcd942..5bac56be6 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -11,7 +11,7 @@ apply(from = rootProject.file("jacoco.gradle")) ext { set("versionMajor", 3) set("versionMinor", 4) - set("versionPatch", 5) + set("versionPatch", 6) } fun generateVersionName() = "${ext["versionMajor"]}.${ext["versionMinor"]}.${ext["versionPatch"]}" From 1ec2d69bdab5674be2b9dc852bcc5848109a18d0 Mon Sep 17 00:00:00 2001 From: Emmanuel Engelhart Date: Sun, 30 Jan 2022 16:36:05 +0100 Subject: [PATCH 29/29] Update Changelog for 3.4.6 --- CHANGELOG | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CHANGELOG b/CHANGELOG index 6702b1dad..770d7959d 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,11 @@ +3.4.6 +* FIX: Added MANAGE_EXTERNAL_STORAGE permission for Android 11 and later +* FIX: Hide "Download over wifi settings" on custom apps +* FIX: Hide SD card access setting on custom apps +* FIX: Launch screen icon updated +* FIX: Broken "Get content" launcher icon +* NEW: Better hide virtual keyboard in library + 3.4.5 NEW: Supports Android 11 NEW: Hotspot socket address better visible, clickable and shareable