2
0
mirror of https://github.com/KDE/kdeconnect-android synced 2025-09-01 14:45:08 +00:00

Compare commits

..

9 Commits

Author SHA1 Message Date
Albert Vaca Cintora
a9e6fcff6a Release 1.23.1 2023-03-17 20:03:19 +01:00
Albert Vaca Cintora
772eae7a4c Revert "Make linter happy: use try-with-resources"
Those require higher API levels. Added comment.

This reverts commit 84e78e4bda.
2023-03-17 19:31:26 +01:00
Albert Vaca Cintora
ff3239f876 Open the notification plugin settings even without permissions 2023-03-17 19:16:04 +01:00
Albert Vaca Cintora
2de744aad8 Allow configuring plugins without permissions
This fixes the bug introduced in f97216 which prevented configuring storage
locations because the plugin wasn't returned by `getPlugin` when there are
no storage locations present.
2023-03-17 19:03:20 +01:00
Albert Vaca Cintora
01f44f524a package -> packet typo fixes 2023-03-17 18:57:02 +01:00
Albert Vaca Cintora
d9e641ae28 Update comments 2023-03-17 18:35:27 +01:00
Albert Vaca Cintora
f2f1930cec Bump versions of deps 2023-03-17 18:35:27 +01:00
l10n daemon script
bf13753022 GIT_SILENT made messages (after extraction) 2023-03-17 00:57:06 +00:00
Albert Vaca Cintora
afa0f89644 Bump target SDK to 32
https://developer.android.com/about/versions/12/behavior-changes-12
2023-03-16 12:00:32 +00:00
56 changed files with 104 additions and 105 deletions

View File

@@ -2,8 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="org.kde.kdeconnect_tp"
android:versionCode="12300"
android:versionName="1.23.0">
android:versionCode="12301"
android:versionName="1.23.1">
<supports-screens
android:anyDensity="true"
@@ -54,6 +54,7 @@
android:label="KDE Connect"
android:supportsRtl="true"
android:allowBackup="false"
android:dataExtractionRules="@xml/data_extraction_rules"
android:networkSecurityConfig="@xml/network_security_config"
android:theme="@style/KdeConnectTheme.NoActionBar"
android:name="org.kde.kdeconnect.MyApplication">

View File

@@ -23,7 +23,7 @@ android {
compileSdkVersion 33
defaultConfig {
minSdkVersion 21
targetSdkVersion 31
targetSdkVersion 32
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
buildFeatures {
@@ -132,7 +132,7 @@ Provider<String> gitHashProvider = project.provider {
}
ext {
coroutines_version = '1.6.0'
coroutines_version = '1.6.4'
}
dependencies {
@@ -143,17 +143,17 @@ dependencies {
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'androidx.core:core-ktx:1.9.0'
implementation 'androidx.preference:preference-ktx:1.2.0'
implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'androidx.recyclerview:recyclerview:1.3.0'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
implementation 'androidx.documentfile:documentfile:1.0.1'
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1"
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1'
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.0"
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.6.0'
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation 'androidx.lifecycle:lifecycle-common-java8:2.5.1'
implementation 'androidx.lifecycle:lifecycle-common-java8:2.6.0'
implementation 'androidx.gridlayout:gridlayout:1.0.0'
implementation 'com.google.android.material:material:1.8.0'
implementation 'com.jakewharton:disklrucache:2.0.2' //For caching album art bitmaps
implementation 'com.jaredrummler:android-device-names:1.1.9' //To get a human-friendly device name
implementation 'com.jaredrummler:android-device-names:2.1.1' //To get a human-friendly device name
implementation 'org.apache.sshd:sshd-core:0.14.0'
implementation 'org.apache.mina:mina-core:2.0.19' //For some reason, makes sshd-core:0.14.0 work without NIO, which isn't available until Android 8 (api 26)
@@ -161,8 +161,8 @@ dependencies {
//implementation('com.github.bright:slf4android:0.1.6') { transitive = true } // For org.apache.sshd debugging
implementation 'com.madgag.spongycastle:bcpkix-jdk15on:1.58.0.0' //For SSL certificate generation
implementation 'org.atteo.classindex:classindex:3.6'
annotationProcessor 'org.atteo.classindex:classindex:3.6'
implementation 'org.atteo.classindex:classindex:3.13'
annotationProcessor 'org.atteo.classindex:classindex:3.13'
// The android-smsmms library is the only way I know to handle MMS in Android
// (Shouldn't a phone OS make phone things easy?)

View File

@@ -245,7 +245,6 @@
<string name="permission_explanation">Bu qoşmanın işləməsi üçün icazələr lazımdır</string>
<string name="optional_permission_explanation">Bütün funksiyaların işləməsi üçün əlavə icazələr verməlisiniz</string>
<string name="plugins_need_optional_permission">Bəzi qoşmalarda icazə çatışmamazlığı səbəbindən bir sıra imkanlar söndürülmüşdür (daha çox məlumat üçün toxunun)</string>
<string name="share_optional_permission_explanation">Paylaşılan faylları qəbul etmək üçün saxlama qovluğu seçməlisiniz</string>
<string name="telepathy_permission_explanation">İş Masanızdan telefonunuzdakı SMS\'ləri oxumaq və SMS göndərmək üçün SMS\'ə girişə icazə verməlisiniz</string>
<string name="telephony_permission_explanation">İş Masanızda telefon zənglərini görmək üçün Zəng Tarixçəsinə və Zəng yığımı vəziyyətinə icazə verməlisiniz</string>
<string name="telephony_optional_permission_explanation">Telefon nömrəsi əvəzinə əlaqənin adını görmək üçün Əlaqə Kitabçasına girişə icazə verməlisiniz</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">Тази приставка се нуждае от разрешения, за да работи</string>
<string name="optional_permission_explanation">Трябва да предоставите допълнителни разрешения, за да активирате всички функции</string>
<string name="plugins_need_optional_permission">Някои плъгини имат деактивирани функции поради липса на разрешение (докоснете за повече информация):</string>
<string name="share_optional_permission_explanation">За да получавате споделени файлове, трябва да изберете директория за местоназначение</string>
<string name="telepathy_permission_explanation">За да четете и записвате SMS от работния плот, трябва да дадете разрешение за SMS</string>
<string name="telephony_permission_explanation">За да виждате телефонни обаждания на работния плот, трябва да дадете разрешение за телефонни обаждания дневници и състояние на телефона</string>
<string name="telephony_optional_permission_explanation">За да видите име на контакт вместо телефонен номер, трябва да дадете достъп до контактите на телефона</string>

View File

@@ -247,7 +247,7 @@
<string name="permission_explanation">Aquest connector necessita permisos per a funcionar</string>
<string name="optional_permission_explanation">Us caldrà concedir permisos extres per a accedir a totes les característiques</string>
<string name="plugins_need_optional_permission">Alguns connectors tenen característiques desactivades per la falta de permís (toqueu per a més informació):</string>
<string name="share_optional_permission_explanation">Per a rebre fitxers compartits cal triar un directori de destinació</string>
<string name="share_optional_permission_explanation">Per a rebre fitxers cal permetre l\'accés a l\'emmagatzematge</string>
<string name="telepathy_permission_explanation">Per a llegir i escriure SMS des de l\'escriptori, haureu de donar permís als SMS</string>
<string name="telephony_permission_explanation">Per a veure les trucades telefòniques des de l\'escriptori, haureu de donar permís d\'accés al registre de trucades telefòniques i a l\'estat del telèfon</string>
<string name="telephony_optional_permission_explanation">Per a veure un nom de contacte en comptes d\'un número de telèfon, haureu de donar permís als contactes del telèfon</string>

View File

@@ -263,7 +263,6 @@
<string name="permission_explanation">Tento modul potřebuje pro práci povolení</string>
<string name="optional_permission_explanation">Pro zpřístupnění všech funkcí potřebujete další oprávnění</string>
<string name="plugins_need_optional_permission">Některé moduly mají vypnuté vlastnosti, kvůli nedostatečným oprávněním (ťukněte pro více informací):</string>
<string name="share_optional_permission_explanation">Pro příjem souborů je potřeba vybrat cílový adresář</string>
<string name="telepathy_permission_explanation">Pro čtení a psaní SMS z počítače musíte udělit oprávnění k SMS</string>
<string name="telephony_permission_explanation">Pro zobrazení telefonátů v počítači musíte udělit oprávnění k záznamům telefonování a stavu telefonu</string>
<string name="telephony_optional_permission_explanation">Pro zobrazení jména kontaktu u telefonního čísla je potřeba udělit oprávnění ke kontaktům v telefonu</string>

View File

@@ -222,7 +222,6 @@
<string name="permission_explanation">Dieses Modul benötigt zusätzliche Berechtigungen</string>
<string name="optional_permission_explanation">Es müssen weitere Berechtigungen erteilt werden, um alle Funktionen nutzen zu können</string>
<string name="plugins_need_optional_permission">Einige Module haben eingeschränkte Funktionen wegen fehlender Berechtigungen, tippen Sie für weitere Informationen:</string>
<string name="share_optional_permission_explanation">Um geteilte Dateien zu empfangen, müssen Sie einen Zielordner wählen</string>
<string name="telepathy_permission_explanation">Um SMS vom Rechner aus zu lesen und zu versenden, muss der Zugriff auf die SMS-Funktion gewährt werden</string>
<string name="telephony_permission_explanation">Um eingehende Anrufe auf der Arbeitsfläche anzuzeigen, muss der Zugriff auf die Anrufliste und den Telefonstatus gewährt werden</string>
<string name="telephony_optional_permission_explanation">Um einen Namen anstelle der Telefonnummer anzuzeigen, muss der Zugriff auf das Adressbuch gewährt werden</string>

View File

@@ -235,7 +235,6 @@
<string name="permission_explanation">Αυτό το πρόσθετο χρειάζεται δικαιώματα για να λειτουργήσει</string>
<string name="optional_permission_explanation">Απαιτείται παραχώρηση επιπλέον δικαιωμάτων για την ενεργοποίηση όλων των λειτουργιών</string>
<string name="plugins_need_optional_permission">Κάποια πρόσθετα έχουν λειτουργίες ανενεργές εξαιτίας της απουσίας δικαιωμάτων (χτυπήστε για περισσότερες πληροφορίες):</string>
<string name="share_optional_permission_explanation">Για να λάβετε κοινόχρηστα αρχεία πρέπει να επιλέξετε έναν κατάλογο προορισμού</string>
<string name="telepathy_permission_explanation">Για να διαβάσετε και να γράψετε SMS από την επιφάνεια εργασίας, χρειάζεται να δώσετε δικαιώματα στο SMS</string>
<string name="telephony_permission_explanation">Για να δείτε τηλεφωνικές κλήσεις στην επιφάνεια εργασίας απαιτείται να παραχωρήσετε δικαιώματα σε καταγραφές τηλεφωνικών κλήσεων και στην κατάσταση του τηλεφώνου</string>
<string name="telephony_optional_permission_explanation">Για να δείτε το όνομα επαφής αντί για τον αριθμό κλήσης χρειάζεται να παραχωρήσετε πρόσβαση στις επαφές στο τηλέφωνο</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">This plugin needs permissions to work</string>
<string name="optional_permission_explanation">You need to grant extra permissions to enable all functions</string>
<string name="plugins_need_optional_permission">Some plugins have features disabled because of lack of permission (tap for more info):</string>
<string name="share_optional_permission_explanation">To receive shared files you need to choose a destination directory</string>
<string name="telepathy_permission_explanation">To read and write SMS from your desktop you need to give permission to SMS</string>
<string name="telephony_permission_explanation">To see phone calls on the desktop you need to give permission to phone call logs and phone state</string>
<string name="telephony_optional_permission_explanation">To see a contact name instead of a phone number you need to give access to the phone\'s contacts</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">Este complemento necesita permisos para funcionar</string>
<string name="optional_permission_explanation">Debe otorgar permisos extra para activar todas las funciones</string>
<string name="plugins_need_optional_permission">Algunos complementos tienen funcionalidades desactivadas por falta de permisos (pulse para más información):</string>
<string name="share_optional_permission_explanation">Para recibir archivos compartidos debe elegir un directorio destino</string>
<string name="telepathy_permission_explanation">Para leer y escribir SMS desde su escritorio, necesita dar permisos para SMS</string>
<string name="telephony_permission_explanation">Para ver las llamadas telefónicas en el escritorio, necesita dar permisos al registro de llamadas telefónicas y al estado del teléfono</string>
<string name="telephony_optional_permission_explanation">Para ver el nombre de un contacto en lugar de un número telefónico, necesita dar acceso a los contactos de su teléfono</string>

View File

@@ -245,7 +245,6 @@
<string name="permission_explanation">Plugin honek baimena behar du funtzionatzeko</string>
<string name="optional_permission_explanation">Baimen gehiago eman behar dituzu funtzio guztiak gaitzeko</string>
<string name="plugins_need_optional_permission">Plugin batzuek desgaitutako eginbideak dituzte baimenak faltan dituztelako (tak egin informazio gehiagorako):</string>
<string name="share_optional_permission_explanation">Partekatutako fitxategiak jasotzeko jomugako direktorio bat aukeratu behar duzu</string>
<string name="telepathy_permission_explanation">SMSak zure mahaigainetik bidali ahal izateko, SMSak erabiltzeko baimena eman behar duzu</string>
<string name="telephony_permission_explanation">Telefono deiak zure mahaigainetik ikusteko, telefono deien egunkarira eta telefonoaren egoerara baimena eman behar duzu</string>
<string name="telephony_optional_permission_explanation">Telefono zenbakiaren ordez kontaktuaren izena ikusteko telefonoko kontaktuak atzitzeko baimena eman behar duzu</string>

View File

@@ -244,7 +244,6 @@
<string name="permission_explanation">Liitännäinen tarvitsee toimiakseen lisäkäyttöoikeuksia</string>
<string name="optional_permission_explanation">Kaikkien toimintojen käyttämiseksi sinun on annettava lisäkäyttöoikeuksia</string>
<string name="plugins_need_optional_permission">Jotkin liitännäisten ominaisuudet eivät ole käytössä puuttuvien käyttöoikeuksien takia (lisätietoa napsauttamalla):</string>
<string name="share_optional_permission_explanation">Jaettujen tiedostojen vastaanottamiseksi on määritettävä kohdekansio</string>
<string name="telepathy_permission_explanation">Lukeaksesi ja lähettääksesi tekstiviestejä työpöydältä sinun on annettava käyttöoikeudet tekstiviesteihin</string>
<string name="telephony_permission_explanation">Puhelujen näyttäminen työpöydällä vaatii käyttöoikeuden puhelulokiin ja puhelimen tilaan</string>
<string name="telephony_optional_permission_explanation">Puhelimen yhteystietoihin on annettava käyttöoikeudet, jotta voit nähdä yhteystiedoissa nimet puhelinnumerojen sijaan</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">Ce module externe nécessite des permissions pour fonctionner</string>
<string name="optional_permission_explanation">Vous devez accorder des permissions supplémentaires pour activer toutes les fonctionnalités</string>
<string name="plugins_need_optional_permission">Certaines fonctionnalités de modules externes sont désactivées faute de permissions suffisantes (tapez pour plus d\'informations) :</string>
<string name="share_optional_permission_explanation">Pour la réception de fichiers partagés, vous devez sélectionner un dossier de destination.</string>
<string name="telepathy_permission_explanation">Pour lire et écrire des SMS depuis votre ordinateur, veuillez permettre l\'accès aux SMS</string>
<string name="telephony_permission_explanation">Pour voir les appels depuis votre ordinateur, veuillez permettre l\'accès au journal des appels et à l\'état du téléphone</string>
<string name="telephony_optional_permission_explanation">Pour voir le nom du contact au lieu du numéro de téléphone, veuillez permettre l\'accès aux contacts du téléphone</string>

View File

@@ -244,7 +244,6 @@
<string name="permission_explanation">Ez a bővítmény engedélyeket kér a működéshez</string>
<string name="optional_permission_explanation">További engedélyeket kell biztosítania az összes funkció bekapcsolásához</string>
<string name="plugins_need_optional_permission">Néhány bővítmény jogosultság hiányában kikapcsolta egyes funkcióit (koppintson további információkért):</string>
<string name="share_optional_permission_explanation">Megosztott fájlok fogadásához meg kell adnia egy célmappát</string>
<string name="telepathy_permission_explanation">Az SMS-ek írásához és olvasásához a számítógépéről engedélyt kell adnia az SMS-nek</string>
<string name="telephony_permission_explanation">Ahhoz, hogy a telefonhívásokat a számítógépén láthassa, engedélyt kell adnia a hívásnaplókhoz és a telefon állapotához</string>
<string name="telephony_optional_permission_explanation">Ahhoz, hogy a telefonszám helyett a nevet lássa, hozzáférést kell adnia a telefon névjegyeihez</string>

View File

@@ -236,7 +236,6 @@
<string name="permission_explanation">Plugin ini perlu perizinan untuk kerja</string>
<string name="optional_permission_explanation">Anda perlu memberikan perizinan tambahan untuk memfungsikan semua fungsi</string>
<string name="plugins_need_optional_permission">Beberapa plugin yang memiliki fitur dinonfungsikan karena kurangnya perizinan (ketuk untuk info selebihnya):</string>
<string name="share_optional_permission_explanation">Untuk menerima file yang dibagikan Anda perlu memilih sebuah direktori tujuan</string>
<string name="telepathy_permission_explanation">Untuk membaca dan menulis SMS dari desktop, Anda harus memberikan perizinan untuk SMS</string>
<string name="telephony_permission_explanation">Untuk melihat panggilan ponsel pada desktop Anda harus memberikan perizinan untuk catatan panggilan ponsel dan keadaan ponsel</string>
<string name="telephony_optional_permission_explanation">Untuk melihat nama kontak daripada nomor ponsel, Anda harus memberikan akses ke kontak ponsel</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">Questa estensione ha bisogno di permessi per funzionare</string>
<string name="optional_permission_explanation">Devi concedere permessi aggiuntivi per abilitare tutte le funzioni</string>
<string name="plugins_need_optional_permission">Alcune estensioni hanno funzioni disabilitate per una mancanza di permessi (tocca per maggiori informazioni):</string>
<string name="share_optional_permission_explanation">Per ricevere file condivisi è necessario scegliere una cartella di destinazione</string>
<string name="telepathy_permission_explanation">Per leggere e scrivere SMS dal tuo desktop, devi concedere l\'autorizzazione per SMS</string>
<string name="telephony_permission_explanation">Per vedere le chiamate telefoniche dal desktop devi dare l\'autorizzazione per accedere al registro delle chiamate e allo stato del telefono</string>
<string name="telephony_optional_permission_explanation">Per vedere il nome di un contatto invece del numero di telefono devi dare accesso alla rubrica del telefono</string>

View File

@@ -237,7 +237,6 @@
<string name="permission_explanation">このプラグインが機能するには権限が必要です</string>
<string name="optional_permission_explanation">すべての機能を有効にするには、追加の権限を許可する必要があります</string>
<string name="plugins_need_optional_permission">権限が不足しているため、いくつかのプラグインの機能は無効化されています (タップして詳細情報を表示):</string>
<string name="share_optional_permission_explanation">共有されたファイルを受信するには保存するディレクトリを指定する必要があります</string>
<string name="telepathy_permission_explanation">デスクトップから SMS を送受信するには SMS の権限を付与する必要があります</string>
<string name="telephony_permission_explanation">デスクトップで通話を表示するために、電話の状態と通話履歴の権限を許可する必要があります</string>
<string name="telephony_optional_permission_explanation">電話番号ではなく連絡先名を見るには、端末の連絡先へのアクセスを許可する必要があります</string>

View File

@@ -237,7 +237,6 @@
<string name="permission_explanation">이 플러그인을 사용하려면 권한이 필요합니다</string>
<string name="optional_permission_explanation">모든 기능을 사용하려면 추가 권한이 필요합니다</string>
<string name="plugins_need_optional_permission">일부 플러그인은 권한이 없어서 비활성화되었습니다(정보를 보려면 누르기):</string>
<string name="share_optional_permission_explanation">공유된 파일을 받으려면 대상 디렉터리를 선택해야 합니다</string>
<string name="telepathy_permission_explanation">데스크톱에서 문자 메시지를 읽고 보내려면 문자 메시지 접근 권한이 필요합니다</string>
<string name="telephony_permission_explanation">데스크톱에서 통화와 문자 메시지를 보려면 통화 기록 및 휴대폰 상태 접근 권한이 필요합니다</string>
<string name="telephony_optional_permission_explanation">전화번호 대신 연락처에 등록된 이름을 보려면 주소록 접근 권한이 필요합니다</string>

View File

@@ -261,7 +261,6 @@
<string name="permission_explanation">Šis papildinys tam, kad veiktų, reikalauja leidimų</string>
<string name="optional_permission_explanation">Norėdami įjungti visas funkcijas, turite suteikti papildomus leidimus</string>
<string name="plugins_need_optional_permission">Kai kurių papildinių ypatybės, dėl leidimų trūkumo, buvo išjungtos (bakstelėkite išsamesnei informacijai):</string>
<string name="share_optional_permission_explanation">Norėdami gauti bendrinamus failus, turite pasirinkti paskirties katalogą</string>
<string name="telepathy_permission_explanation">Norėdami skaityti ir rašyti SMS žinutes iš savo darbalaukio, turite suteikti prieigą prie SMS žinučių</string>
<string name="telephony_permission_explanation">Norėdami matyti telefono skambučius darbalaukyje, turite suteikti prieigą prie telefono skambučių žurnalo ir telefono būsenos</string>
<string name="telephony_optional_permission_explanation">Norėdami vietoj adresato numerio matyti adresato vardą, turite suteikti priegą prie telefono adresatų</string>

View File

@@ -247,7 +247,7 @@
<string name="permission_explanation">Deze plug-in heeft toestemming nodig om te werken</string>
<string name="optional_permission_explanation">U moet toestemming geven om alle functies in te schakelen</string>
<string name="plugins_need_optional_permission">Sommige plug-ins hebben functies uitgeschakeld vanwege ontbrekende toestemming (tik voor meer informatie):</string>
<string name="share_optional_permission_explanation">Om gedeelde bestanden te ontvangen moet u een bestemmingsmap kiezen</string>
<string name="share_optional_permission_explanation">Om bestanden te ontvangen die u nodig hebt voor toegang tot opslag</string>
<string name="telepathy_permission_explanation">Om een SMS te lezen of te schrijven vanaf uw bureaublad moet u toestemming geven tot SMS</string>
<string name="telephony_permission_explanation">Om telefoonoproepen te zien op het bureaublad moet u toestemming geven tot telefoonoproeplogs en telefoonstatus</string>
<string name="telephony_optional_permission_explanation">Om een naam van een contactpersoon te zien in plaats van een telefoonnummer moet u toegang geven tot de contacten in uw telefoon</string>

View File

@@ -261,7 +261,6 @@
<string name="permission_explanation">Ta wtyczka wymaga uprawnień do działania</string>
<string name="optional_permission_explanation">Musisz przydzielić dodatkowe uprawnienia, aby włączyć wszystkie funkcje</string>
<string name="plugins_need_optional_permission">Niektóre wtyczki mają ograniczone możliwości ze względu na ograniczone uprawnienia (stuknij, aby dowiedzieć się więcej)</string>
<string name="share_optional_permission_explanation">Aby odbierać udostępnianie pliki, musisz wskazać katalog docelowy na nie</string>
<string name="telepathy_permission_explanation">Aby czytać i pisać esemesy na innym urządzeniu, należy nadać uprawnienia do esemesów</string>
<string name="telephony_permission_explanation">Aby widzieć rozmowy telefoniczne na innym urządzeniu, należy nadać uprawnienia do dziennika rozmów i stanu telefonu</string>
<string name="telephony_optional_permission_explanation">Aby widzieć nazwę kontaktu zamiast numeru telefonu, należy zezwolić na dostęp do kontaktów telefonu</string>

View File

@@ -240,7 +240,6 @@
<string name="permission_explanation">Este plugin precisa de permissões para funcionar</string>
<string name="optional_permission_explanation">Você precisa conceder permissões extras para ativar todas as funções</string>
<string name="plugins_need_optional_permission">Alguns plugins possuem recursos desativados devido à falta de permissões (toque para obter mais informações):</string>
<string name="share_optional_permission_explanation">Para receber arquivos compartilhados você precisa escolher uma pasta de destino</string>
<string name="telepathy_permission_explanation">Para ler e gravar SMS a partir do seu ambiente de trabalho é necessário conceder permissão para SMS</string>
<string name="telephony_permission_explanation">Para ver as chamadas telefônicas no seu ambiente de trabalho é preciso dar permissões para registro de chamadas telefônicas e do estado do celular</string>
<string name="telephony_optional_permission_explanation">Para ver o nome de um contato em vez do seu número de telefone é necessário conceder acesso aos contatos do celular</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">Este \'plugin\' precisa de permissões para funcionar</string>
<string name="optional_permission_explanation">Precisa de dar permissões extra para activar todas as funcionalidades</string>
<string name="plugins_need_optional_permission">Alguns \'plugins\' têm funcionalidades desactivadas devido à falta de permissões (toque para obter mais informações):</string>
<string name="share_optional_permission_explanation">Para receber os ficheiros partilhados, tem de escolher uma pasta de destino</string>
<string name="telepathy_permission_explanation">Para ler e escrever SMS\'s a partir do seu ambiente de trabalho, precisa de dar permissões para os SMS\'s</string>
<string name="telephony_permission_explanation">Para ver as chamadas telefónicas a partir do seu ambiente de trabalho, precisa de dar permissões para o registo de chamadas telefónicas e do estado do telemóvel</string>
<string name="telephony_optional_permission_explanation">Para ver o nome de um contacto em vez do seu número de telefone, precisa de dar acesso aos contactos do telemóvel</string>

View File

@@ -252,7 +252,6 @@
<string name="permission_explanation">Această extensie are nevoie de permisiuni ca să lucreze</string>
<string name="optional_permission_explanation">Trebuie să acordați permisiuni suplimentare pentru activarea tuturor funcțiilor</string>
<string name="plugins_need_optional_permission">Unele extensii au caracteristici dezactivate din cauza lipsei permisiunilor (atingeți pentru informații suplimentare):</string>
<string name="share_optional_permission_explanation">Trebuie să alegeți un dosar destinație pentru a primi fișiere partajate</string>
<string name="telepathy_permission_explanation">Pentru a citi și scrie SMS de pe calculatorul de birou, trebuie să acordați permisiuni asupra SMS-urilor</string>
<string name="telephony_permission_explanation">Pentru a vedea apelurile pe calculatorul de birou, trebuie să acordați permisiuni asupra jurnalului de apeluri și stării telefonului</string>
<string name="telephony_optional_permission_explanation">Pentru a vedea numele contactului în locul numărului de telefon, trebuie să permiteți accesul la contactele telefonului.</string>

File diff suppressed because one or more lines are too long

View File

@@ -243,7 +243,6 @@
<string name="permission_explanation">Tento zásuvný modul vyžaduje oprávnenie, aby mohol fungovať</string>
<string name="optional_permission_explanation">Musíte udeliť oprávnenia navyše, aby boli povolené všetky funkcie</string>
<string name="plugins_need_optional_permission">Niektoré zásuvné moduly majú zakázané funkcie, pretože im chýbajú oprávnenia (ťuknutím získate viac informácií):</string>
<string name="share_optional_permission_explanation">Ak chcete prijímať zdieľané súbory, musíte zvoliť cieľový adresár</string>
<string name="telepathy_permission_explanation">Na čítanie a písanie SMS z vášho počítača, musíte udeliť oprávnenie k správam SMS</string>
<string name="telephony_permission_explanation">Na prezeranie telefónnych hovorov z vášho počítača, musíte udeliť oprávnenie k záznamom hovorov a stavu telefónu</string>
<string name="telephony_optional_permission_explanation">Na prezeranie mien kontaktov namiesto telefónnych čísel, musíte udeliť prístup k telefónnym kontaktom</string>

View File

@@ -263,7 +263,7 @@
<string name="permission_explanation">Ti vtičniki potrebujejo dovoljenja za delovanje</string>
<string name="optional_permission_explanation">Če želite omogočiti vse funkcije, morate podeliti dodatna dovoljenja</string>
<string name="plugins_need_optional_permission">Nekateri vtičniki imajo funkcije onemogočene zaradi pomanjkanja dovoljenj (tapnite za več informacij):</string>
<string name="share_optional_permission_explanation">Če želite prejemati datoteke v skupni rabi, morate izbrati ciljni imenik</string>
<string name="share_optional_permission_explanation">Če želite prejemati datoteke, morate dovoliti dostop do hrambe</string>
<string name="telepathy_permission_explanation">Če želite brati in pisati SMS z namizja, morate izdati dovoljenje za SMS</string>
<string name="telephony_permission_explanation">Če želite videti telefonske klice na namizju, morate dati dovoljenje za dnevnike klicev in stanje telefona</string>
<string name="telephony_optional_permission_explanation">Če želite namesto telefonske številke videti ime stika, morate omogočiti dostop do stikov telefona</string>

View File

@@ -244,7 +244,6 @@
<string name="permission_explanation">Insticksprogrammet behöver rättigheter för att fungera</string>
<string name="optional_permission_explanation">Du måste ge extra rättigheter för att aktivera alla funktioner</string>
<string name="plugins_need_optional_permission">Vissa insticksprogram har inaktiverade funktioner på grund av att rättigheter saknas (rör för mer information):</string>
<string name="share_optional_permission_explanation">För att ta emot delade filer måste du välja en målkatalog</string>
<string name="telepathy_permission_explanation">För att läsa och skriva SMS från skrivbordet måste du ge rättigheter för SMS</string>
<string name="telephony_permission_explanation">För att se telefonsamtal på skrivbordet måste du ge rättigheter för telefonsamtalsloggar och telefontillstånd</string>
<string name="telephony_optional_permission_explanation">För att se ett kontaktnamn istället för ett telefonnummer måste du ge tillgång till telefonens kontakter</string>

View File

@@ -247,7 +247,6 @@
<string name="permission_explanation">இச்செருகுநிரல் இயங்க அனுமதிகள் தேவை</string>
<string name="optional_permission_explanation">எல்லா செயல்பாடுகளையும் இயக்க நீங்கள் கூடுதல் அனுமதிகளை வழங்க வேண்டும்</string>
<string name="plugins_need_optional_permission">அனுமதி இல்லாததால் சில செருகுநிரல்களின் அம்சங்கள் முடங்கியுள்ளன (மேலும் விவரங்களுக்கு தட்டவும்):</string>
<string name="share_optional_permission_explanation">பகிரப்படும் கோப்புகளை பெற நீங்கள் ஓர் இலக்கு அடைவை தேர்ந்தெடுக்க வேண்டும்</string>
<string name="telepathy_permission_explanation">உங்கள் மேசைக்கணினியிலிருந்து SMS எழுத மற்றும் படிக்க நீங்கள் SMS அனுமதியைத் தர வேண்டும்</string>
<string name="telephony_permission_explanation">மேசைக்கணினியிலிருந்து அழைப்புகளைக் காண நீங்கள் அழைப்பு வரலாறு மற்றும் தொலைபேசி நிலைக்கான அனுமதியைத் தர வேண்டும்</string>
<string name="telephony_optional_permission_explanation">தொலைபேசி எண்ணுக்குப் பதிலாக நபரின் பெயரைக் காண நீங்கள் தொடர்புகளை அணுகும் அனுமதியைத் தர வேண்டும்</string>

View File

@@ -247,7 +247,7 @@
<string name="permission_explanation">Bu eklenti, çalışmak için izne gereksinim duyuyor</string>
<string name="optional_permission_explanation">Tüm işlevleri etkinleştirmek için daha fazla yetkiye gereksiniminiz var</string>
<string name="plugins_need_optional_permission">Bazı eklentilerin özellikleri, izin yetersizliğinden kapalı gelmektedir (daha fazla bilgi için dokunun):</string>
<string name="share_optional_permission_explanation">Paylaşılan dosyaların almak için bir hedef dizin seçmelisiniz.</string>
<string name="share_optional_permission_explanation">Dosyalar almak için depolama erişimini etkinleştirmelisiniz</string>
<string name="telepathy_permission_explanation">Masaüstünde SMS yazma ve okuma yapmak için SMS izni gereklidir</string>
<string name="telephony_permission_explanation">Masaüstünde telefon görüşmelerini görmek için telefon görüşmesi kayıtlarına ve telefon durumuna izin vermeniz gerekir</string>
<string name="telephony_optional_permission_explanation">Telefon numarası yerine kişi adı görebilmek için telefonun kişilerine erişim gereklidir</string>

View File

@@ -263,7 +263,7 @@
<string name="permission_explanation">Для роботи цього додатка потрібні додаткові права доступу</string>
<string name="optional_permission_explanation">Щоб уможливити використання усіх функцій, вам слід надати програмі додаткові права доступу</string>
<string name="plugins_need_optional_permission">Можливості деяких додатків вимкнено, оскільки програмі не вистачає прав доступу (натисніть, щоб дізнатися більше):</string>
<string name="share_optional_permission_explanation">Для отримання файлів спільного користування вам слід вибрати каталог призначення</string>
<string name="share_optional_permission_explanation">Для отримання файлів вам слід дозволити доступ до сховища даних</string>
<string name="telepathy_permission_explanation">Щоб читати і писати SMS з вашого робочого комп’ютера, вам слід надати програмі доступ до SMS</string>
<string name="telephony_permission_explanation">Щоб переглядати дзвінки з робочого комп’ютера, вам слід надати програмі доступ до журналу дзвінків та стану телефону</string>
<string name="telephony_optional_permission_explanation">Щоб бачити ім’я контакту замість номеру телефону, вам слід надати програмі доступ до записів контактів на телефоні</string>

View File

@@ -239,7 +239,6 @@
<string name="permission_explanation">这个插件需要权限才能工作</string>
<string name="optional_permission_explanation">您需要授予额外权限以启用全部功能</string>
<string name="plugins_need_optional_permission">因缺少权限,某些插件的一些功能已禁用(点击以查看更多信息):</string>
<string name="share_optional_permission_explanation">要接收共享的文件,您需要选择一个目标目录</string>
<string name="telepathy_permission_explanation">从计算机桌面读取、写入短消息需要向应用程序授予 SMS 权限</string>
<string name="telephony_permission_explanation">要桌面上查看手机通话记录,您需要授予访问通话记录和手机状态的权限</string>
<string name="telephony_optional_permission_explanation">要查看联系人姓名而非电话号码,您需要授予访问手机通讯录的权限</string>

View File

@@ -158,7 +158,6 @@
<string name="unknown_device">Unknown device</string>
<string name="error_not_reachable">Device not reachable</string>
<string name="error_already_paired">Device already paired</string>
<string name="error_could_not_send_package">Could not send package</string>
<string name="error_timed_out">Timed out</string>
<string name="error_canceled_by_user">Canceled by user</string>
<string name="error_canceled_by_other_peer">Canceled by other peer</string>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<data-extraction-rules>
<cloud-backup>
<exclude domain="root" />
<exclude domain="file" />
<exclude domain="database" />
<exclude domain="sharedpref" />
<exclude domain="external" />
</cloud-backup>
<device-transfer>
<exclude domain="root" />
<exclude domain="file" />
<exclude domain="database" />
<exclude domain="sharedpref" />
<exclude domain="external" />
</device-transfer>
</data-extraction-rules>

View File

@@ -64,8 +64,8 @@ public abstract class BaseLink {
receivers.remove(pr);
}
//Should be called from a background thread listening to packages
protected void packageReceived(NetworkPacket np) {
//Should be called from a background thread listening for packets
protected void packetReceived(NetworkPacket np) {
for(PacketReceiver pr : receivers) {
pr.onPacketReceived(np);
}

View File

@@ -59,7 +59,7 @@ public abstract class BasePairingHandler {
}
/* To be implemented by respective pairing handler */
public abstract void packageReceived(NetworkPacket np);
public abstract void packetReceived(NetworkPacket np);
public abstract void requestPairing();
public abstract void acceptPairing();
public abstract void rejectPairing();

View File

@@ -89,7 +89,7 @@ public class BluetoothLink extends BaseLink {
}
}
packageReceived(np);
packetReceived(np);
}
});

View File

@@ -38,7 +38,7 @@ public class BluetoothPairingHandler extends BasePairingHandler {
}
@Override
public void packageReceived(NetworkPacket np) {
public void packetReceived(NetworkPacket np) {
boolean wantsPair = np.getBoolean("pair");
@@ -123,7 +123,7 @@ public class BluetoothPairingHandler extends BasePairingHandler {
@Override
public void onFailure(Throwable e) {
mCallback.pairingFailed(mDevice.getContext().getString(R.string.error_could_not_send_package));
mCallback.pairingFailed(mDevice.getContext().getString(R.string.runcommand_notreachable));
}
};
mDevice.sendPacket(createPairPacket(), statusCallback);

View File

@@ -153,7 +153,7 @@ public class LanLink extends BaseLink {
//Log.e("LanLink/sendPacket", np.getType());
//Send body of the network package
//Send body of the network packet
try {
OutputStream writer = socket.getOutputStream();
writer.write(np.serialize().getBytes(Charsets.UTF_8));
@@ -247,7 +247,7 @@ public class LanLink extends BaseLink {
}
packageReceived(np);
packetReceived(np);
}
@Override

View File

@@ -88,7 +88,7 @@ public class LanLinkProvider extends BaseLinkProvider implements LanLink.LinkDis
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String message = reader.readLine();
networkPacket = NetworkPacket.unserialize(message);
//Log.e("TcpListener","Received TCP package: "+networkPacket.serialize());
//Log.e("TcpListener", "Received TCP packet: " + networkPacket.serialize());
} catch (Exception e) {
Log.e("KDE/LanLinkProvider", "Exception while receiving TCP packet", e);
return;

View File

@@ -41,7 +41,7 @@ public class LanPairingHandler extends BasePairingHandler {
}
@Override
public void packageReceived(NetworkPacket np) {
public void packetReceived(NetworkPacket np) {
boolean wantsPair = np.getBoolean("pair");
@@ -130,7 +130,7 @@ public class LanPairingHandler extends BasePairingHandler {
@Override
public void onFailure(Throwable e) {
Log.e("LanPairing/onFailure", "Exception", e);
mCallback.pairingFailed(mDevice.getContext().getString(R.string.error_could_not_send_package));
mCallback.pairingFailed(mDevice.getContext().getString(R.string.runcommand_notreachable));
}
};
mDevice.sendPacket(createPairPacket(), statusCallback);

View File

@@ -35,7 +35,7 @@ public class LoopbackLink extends BaseLink {
@WorkerThread
@Override
public boolean sendPacket(NetworkPacket in, Device.SendPacketStatusCallback callback) {
packageReceived(in);
packetReceived(in);
if (in.hasPayload()) {
callback.onProgressChanged(0);
in.setPayload(in.getPayload());

View File

@@ -19,7 +19,7 @@ public class LoopbackPairingHandler extends BasePairingHandler {
}
@Override
public void packageReceived(NetworkPacket np) {
public void packetReceived(NetworkPacket np) {
}

View File

@@ -286,8 +286,8 @@ public class Device implements BaseLink.PacketReceiver {
}
/**
* This method does not send an unpair package, instead it unpairs internally by deleting trusted device info. . Likely to be called after sending package from
* pairing handler
* This method does not send an unpair packet, instead it unpairs internally by deleting trusted device info.
* Likely to be called after sending packet from pairing handler
*/
private void unpairInternal() {
@@ -548,11 +548,11 @@ public class Device implements BaseLink.PacketReceiver {
if (NetworkPacket.PACKET_TYPE_PAIR.equals(np.getType())) {
Log.i("KDE/Device", "Pair package");
Log.i("KDE/Device", "Pair packet");
for (BasePairingHandler ph : pairingHandlers.values()) {
try {
ph.packageReceived(np);
ph.packetReceived(np);
} catch (Exception e) {
Log.e("PairingPacketReceived", "Exception", e);
}
@@ -563,9 +563,8 @@ public class Device implements BaseLink.PacketReceiver {
reloadPluginsFromSettings();
}
//If capabilities are not supported, iterate all plugins
Collection<String> targetPlugins = pluginsByIncomingInterface.get(np.getType());
if (!targetPlugins.isEmpty()) {
if (!targetPlugins.isEmpty()) { // When a key doesn't exist the multivaluemap returns an empty collection, so we don't need to check for null
for (String pluginKey : targetPlugins) {
Plugin plugin = plugins.get(pluginKey);
try {
@@ -580,18 +579,16 @@ public class Device implements BaseLink.PacketReceiver {
}
} else {
//Log.e("KDE/onPacketReceived","Device not paired, will pass package to unpairedPacketListeners");
//Log.e("KDE/onPacketReceived","Device not paired, will pass packet to unpairedPacketListeners");
// If it is pair package, it should be captured by "if" at start
// If it is pair packet, it should be captured by "if" at start
// If not and device is paired, it should be captured by isPaired
// Else unpair, this handles the situation when one device unpairs, but other dont know like unpairing when wi-fi is off
unpair();
//If capabilities are not supported, iterate through all plugins.
// The following code is NOT USED. It adds support for receiving packets from not trusted devices, but as of March 2023 no plugin implements "onUnpairedDevicePacketReceived".
Collection<String> targetPlugins = pluginsByIncomingInterface.get(np.getType());
// When a mapping doesn't exist, an empty collection is added to the map and
// then returned, so a null check is not necessary.
if (!targetPlugins.isEmpty()) {
for (String pluginKey : targetPlugins) {
Plugin plugin = plugins.get(pluginKey);
@@ -650,7 +647,7 @@ public class Device implements BaseLink.PacketReceiver {
/**
* Send a packet to the device asynchronously
* @param np The packet
* @param replaceID If positive, replaces all unsent packages with the same replaceID
* @param replaceID If positive, replaces all unsent packets with the same replaceID
* @param callback A callback for success/failure
*/
@AnyThread
@@ -689,8 +686,8 @@ public class Device implements BaseLink.PacketReceiver {
/*
if (!m_outgoingCapabilities.contains(np.getType()) && !NetworkPacket.protocolPacketTypes.contains(np.getType())) {
Log.e("Device/sendPacket", "Plugin tried to send an undeclared package: " + np.getType());
Log.w("Device/sendPacket", "Declared outgoing package types: " + Arrays.toString(m_outgoingCapabilities.toArray()));
Log.e("Device/sendPacket", "Plugin tried to send an undeclared packet: " + np.getType());
Log.w("Device/sendPacket", "Declared outgoing packet types: " + Arrays.toString(m_outgoingCapabilities.toArray()));
}
*/
@@ -704,7 +701,7 @@ public class Device implements BaseLink.PacketReceiver {
}
if (!success) {
Log.e("KDE/sendPacket", "No device link (of " + links.size() + " available) could send the package. Packet " + np.getType() + " to " + name + " lost!");
Log.e("KDE/sendPacket", "No device link (of " + links.size() + " available) could send the packet. Packet " + np.getType() + " to " + name + " lost!");
}
return success;
@@ -725,6 +722,15 @@ public class Device implements BaseLink.PacketReceiver {
return plugins.get(pluginKey);
}
@Nullable
public Plugin getPluginIncludingWithoutPermissions(String pluginKey) {
Plugin p = plugins.get(pluginKey);
if (p == null) {
p = pluginsWithoutPermissions.get(pluginKey);
}
return p;
}
private synchronized boolean addPlugin(final String pluginKey) {
Plugin existing = plugins.get(pluginKey);
if (existing != null) {
@@ -826,8 +832,8 @@ public class Device implements BaseLink.PacketReceiver {
if (pluginEnabled) {
boolean success = addPlugin(pluginKey);
if (success) {
for (String packageType : pluginInfo.getSupportedPacketTypes()) {
newPluginsByIncomingInterface.put(packageType, pluginKey);
for (String packetType : pluginInfo.getSupportedPacketTypes()) {
newPluginsByIncomingInterface.put(packetType, pluginKey);
}
} else {
removePlugin(pluginKey);

View File

@@ -91,7 +91,7 @@ public class FilesHelper {
}
//Create the network package from the URI
//Create the network packet from the URI
public static NetworkPacket uriToNetworkPacket(final Context context, final Uri uri, String type) {
try {

View File

@@ -658,14 +658,17 @@ public class SMSHelper {
attachments.add(new Attachment(partID, contentType, encodedThumbnail, fileName));
} else if (MimeType.isTypeVideo(contentType)) {
String fileName = data.substring(data.lastIndexOf('/') + 1);
try (MediaMetadataRetriever retriever = new MediaMetadataRetriever()) {
retriever.setDataSource(context, ContentUris.withAppendedId(getMMSPartUri(), partID));
Bitmap videoThumbnail = retriever.getFrameAtTime();
String encodedThumbnail = SmsMmsUtils.bitMapToBase64(
Bitmap.createScaledBitmap(videoThumbnail, THUMBNAIL_WIDTH, THUMBNAIL_HEIGHT, true)
);
attachments.add(new Attachment(partID, contentType, encodedThumbnail, fileName));
};
// Can't use try-with-resources since MediaMetadataRetriever's close method was only added in API 29
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(context, ContentUris.withAppendedId(getMMSPartUri(), partID));
Bitmap videoThumbnail = retriever.getFrameAtTime();
String encodedThumbnail = SmsMmsUtils.bitMapToBase64(
Bitmap.createScaledBitmap(videoThumbnail, THUMBNAIL_WIDTH, THUMBNAIL_HEIGHT, true)
);
attachments.add(new Attachment(partID, contentType, encodedThumbnail, fileName));
} else if (MimeType.isTypeAudio(contentType)) {
String fileName = data.substring(data.lastIndexOf('/') + 1);

View File

@@ -276,7 +276,7 @@ public class NetworkPacket {
np.mBody.put("incomingCapabilities", new JSONArray(PluginFactory.getIncomingCapabilities()));
np.mBody.put("outgoingCapabilities", new JSONArray(PluginFactory.getOutgoingCapabilities()));
} catch (Exception e) {
Log.e("NetworkPackage", "Exception on createIdentityPacket", e);
Log.e("NetworkPacket", "Exception on createIdentityPacket", e);
}
return np;

View File

@@ -142,7 +142,7 @@ public class ContactsPlugin extends Plugin {
* The identifiers returned can be used in future requests to get more information
* about the contact
*
* @param np The package containing the request
* @param np The packet containing the request
* @return true if successfully handled, false otherwise
*/
@SuppressWarnings("SameReturnValue")

View File

@@ -98,11 +98,9 @@ public class NotificationsPlugin extends Plugin implements NotificationReceiver.
@Override
public PluginSettingsFragment getSettingsFragment(Activity activity) {
if (hasPermission()) {
Intent intent = new Intent(activity, NotificationFilterActivity.class);
intent.putExtra(PREF_KEY, this.getSharedPreferencesName());
activity.startActivity(intent);
}
Intent intent = new Intent(activity, NotificationFilterActivity.class);
intent.putExtra(PREF_KEY, this.getSharedPreferencesName());
activity.startActivity(intent);
return null;
}

View File

@@ -63,7 +63,7 @@ public abstract class Plugin {
}
/**
* To receive the network package from the unpaired device, override
* To receive the network packet from the unpaired device, override
* listensToUnpairedDevices to return true and this method.
*/
public boolean onUnpairedDevicePacketReceived(NetworkPacket np) {
@@ -228,8 +228,8 @@ public abstract class Plugin {
}
/**
* Called when a plugin receives a package. By convention we return true
* when we have done something in response to the package or false
* Called when a plugin receives a packet. By convention we return true
* when we have done something in response to the packet or false
* otherwise, even though that value is unused as of now.
*/
public boolean onPacketReceived(NetworkPacket np) {

View File

@@ -60,7 +60,7 @@ public class ReceiveNotificationsPlugin extends Plugin {
public boolean onPacketReceived(final NetworkPacket np) {
if (!np.has("ticker") || !np.has("appName") || !np.has("id")) {
Log.e("NotificationsPlugin", "Received notification package lacks properties");
Log.e("NotificationsPlugin", "Received notification packet lacks properties");
return true;
}

View File

@@ -351,7 +351,7 @@ public class RemoteKeyboardPlugin extends Plugin implements SharedPreferences.On
if (!np.getType().equals(PACKET_TYPE_MOUSEPAD_REQUEST)
|| (!np.has("key") && !np.has("specialKey"))) { // expect at least key OR specialKey
Log.e("RemoteKeyboardPlugin", "Invalid package for remotekeyboard plugin!");
Log.e("RemoteKeyboardPlugin", "Invalid packet type for remotekeyboard plugin!");
return false;
}

View File

@@ -89,10 +89,10 @@ public class SftpSettingsFragment
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
super.onCreatePreferences(savedInstanceState, rootKey);
int colorAccent;
try (TypedArray ta = requireContext().obtainStyledAttributes(new int[]{R.attr.colorAccent})) {
colorAccent = ta.getColor(0, 0);
}
// Can't use try-with-resources since TypedArray's close method was only added in API 31
TypedArray ta = requireContext().obtainStyledAttributes(new int[]{R.attr.colorAccent});
int colorAccent = ta.getColor(0, 0);
ta.recycle();
storageInfoList = getStorageInfoList(requireContext(), plugin);

View File

@@ -30,15 +30,14 @@ public class PluginPreference extends SwitchPreference {
PluginFactory.PluginInfo info = PluginFactory.getPluginInfo(pluginKey);
setTitle(info.getDisplayName());
setSummary(info.getDescription());
setIcon(android.R.color.transparent);
setIcon(android.R.color.transparent);
setChecked(device.isPluginEnabled(pluginKey));
Plugin plugin = device.getPlugin(pluginKey);
if (info.hasSettings() && plugin != null) {
if (info.hasSettings()) {
this.listener = v -> {
Plugin plugin1 = device.getPlugin(pluginKey);
if (plugin1 != null) {
callback.onStartPluginSettingsFragment(plugin1);
Plugin plugin = device.getPluginIncludingWithoutPermissions(pluginKey);
if (plugin != null) {
callback.onStartPluginSettingsFragment(plugin);
} else { //Could happen if the device is not connected anymore
callback.onFinish();
}

View File

@@ -58,7 +58,7 @@ public class PluginSettingsActivity
if (pluginKey != null) {
Device device = BackgroundService.getInstance().getDevice(deviceId);
if (device != null) {
Plugin plugin = device.getPlugin(pluginKey);
Plugin plugin = device.getPluginIncludingWithoutPermissions(pluginKey);
if (plugin != null) {
fragment = plugin.getSettingsFragment(this);
}

View File

@@ -57,7 +57,7 @@ public class PluginSettingsFragment extends PreferenceFragmentCompat {
this.pluginKey = getArguments().getString(ARG_PLUGIN_KEY);
this.layout = getArguments().getInt(ARG_LAYOUT);
this.device = getDeviceOrThrow(getDeviceId());
this.plugin = device.getPlugin(pluginKey);
this.plugin = device.getPluginIncludingWithoutPermissions(pluginKey);
super.onCreate(savedInstanceState);
}