2
0
mirror of https://github.com/KDE/kdeconnect-android synced 2025-08-31 22:25:08 +00:00

Compare commits

..

16 Commits

Author SHA1 Message Date
Albert Vaca
540c0a4a24 Fix crash and release 1.13.2 2019-09-23 19:38:59 +02:00
l10n daemon script
c28dd3606e GIT_SILENT made messages (after extraction) 2019-09-23 02:35:55 +02:00
l10n daemon script
bc2bb0cc7e GIT_SILENT made messages (after extraction) 2019-09-22 02:41:45 +02:00
l10n daemon script
0ae7055711 GIT_SILENT made messages (after extraction) 2019-09-20 02:41:00 +02:00
Albert Vaca Cintora
e70419e9d3 Release 1.13.1 2019-09-20 00:57:23 +02:00
Albert Vaca Cintora
2ea3ecbdba Fix inconsistent state if adding a new storage when in action mode 2019-09-20 00:54:11 +02:00
Albert Vaca Cintora
d8cbc38532 Fix Sftp preferences not working
In version 1.1.0 of androidx, preferences do nothing on click if they are
not selectable. Added a new property "inSelectionMode" that we can use
instead of the built-in "selectable".
2019-09-20 00:49:32 +02:00
l10n daemon script
caeb59eb3d GIT_SILENT made messages (after extraction) 2019-09-19 02:37:28 +02:00
Nicolas Fella
4f8e62958a Fix build 2019-09-18 11:29:25 +02:00
Nicolas Fella
e3e4fc6552 Don't sync notification on connection 2019-09-17 09:43:03 +00:00
Tom Watson
bec3a0c147 add missing apostrophe to string 2019-09-17 11:39:22 +02:00
l10n daemon script
80b572761b GIT_SILENT made messages (after extraction) 2019-09-16 02:41:10 +02:00
l10n daemon script
3d56a22e03 GIT_SILENT made messages (after extraction) 2019-09-10 02:34:05 +02:00
l10n daemon script
0be3c1601b GIT_SILENT made messages (after extraction) 2019-09-09 02:36:06 +02:00
Albert Vaca Cintora
ea15a4eecd Check-in a new debug keystore
This way, when installing a development version built on a different
environment, it will be signed with the same key and Android won't make
you wipe your data.
2019-09-07 14:31:55 +02:00
Albert Vaca Cintora
96679dfb0c Bump deps 2019-09-07 14:28:42 +02:00
27 changed files with 67 additions and 41 deletions

1
.gitignore vendored
View File

@@ -10,5 +10,6 @@ classes/
gradle
*.iml
*.keystore
!debug.keystore
.directory
GPUCache/

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.kde.kdeconnect_tp"
android:versionCode="11300"
android:versionName="1.13">
android:versionCode="11320"
android:versionName="1.13.2">
<supports-screens
android:anyDensity="true"

View File

@@ -6,7 +6,7 @@ buildscript {
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.1'
classpath 'com.android.tools.build:gradle:3.4.2'
}
}
@@ -44,10 +44,19 @@ android {
abortOnError false
checkReleaseBuilds false
}
signingConfigs {
debug {
storeFile file("debug.keystore")
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
}
buildTypes {
debug {
minifyEnabled false
useProguard false
signingConfig signingConfigs.debug
}
release { //keep on 'release' for faster builds, set to 'all' when testing to make sure proguard is not deleting important stuff
minifyEnabled true
@@ -69,9 +78,9 @@ dependencies {
*/
}
implementation 'androidx.media:media:1.0.1'
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.preference:preference:1.0.0'
implementation 'androidx.media:media:1.1.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.preference:preference:1.1.0'
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'com.jakewharton:disklrucache:2.0.2' //For caching album art bitmaps

BIN
debug.keystore Normal file

Binary file not shown.

View File

@@ -7,6 +7,7 @@
<string name="pref_plugin_telephony_desc">Unvia avisos de les llamaes entrantes</string>
<string name="pref_plugin_battery">Informe de la batería</string>
<string name="pref_plugin_battery_desc">Informa davezu del estáu de la batería</string>
<string name="pref_plugin_sftp">Sistema de ficheros en remoto</string>
<string name="pref_plugin_sftp_desc">Permite restolar remotamente\'l sistema de ficheros d\'esti preséu</string>
<string name="pref_plugin_clipboard">Sincronización del cartafueyu</string>
<string name="pref_plugin_clipboard_desc">Comparte\'l conteníu del cartafueyu</string>
@@ -24,7 +25,7 @@
<string name="pref_plugin_receive_notifications">Receición d\'avisos</string>
<string name="pref_plugin_receive_notifications_desc">Recibe los avisos d\'otros preseos y amúesalos n\'Android</string>
<string name="pref_plugin_sharereceiver">Compartición y receición</string>
<string name="pref_plugin_sharereceiver_desc">Comparti ficheros y URLs ente preseos</string>
<string name="pref_plugin_sharereceiver_desc">Comparte ficheros y URLs ente preseos</string>
<string name="device_list_empty">Nun hai preseos</string>
<string name="ok">Aceutar</string>
<string name="cancel">Encaboxar</string>
@@ -102,8 +103,8 @@
<item quantity="other">Unviáronse %2$d ficheros a %1$s</item>
</plurals>
<plurals name="send_files_fail_title">
<item quantity="one">Fallu al unviar el ficheru de %1$s</item>
<item quantity="other">Fallu al unviar %2$d de los %3$d ficheros de %1$s</item>
<item quantity="one">Fallu al unviar el ficheru a %1$s</item>
<item quantity="other">Fallu al unviar %2$d de los %3$d ficheros a %1$s</item>
</plurals>
<string name="received_file_text">Toca p\'abrir «%1s»</string>
<string name="cannot_create_file">Nun pue crease\'l ficheru %s</string>
@@ -117,6 +118,7 @@
<string name="settings">Axustes</string>
<string name="mpris_volume">Volume</string>
<string name="mpris_time_settings_title">Botones d\'avanzar/rebobinar</string>
<string name="mpris_time_settings_summary">Axusta\'l tiempu d\'avance/rebobináu al primir</string>
<string-array name="mpris_time_entries">
<item>10 segundos</item>
<item>20 segundos</item>
@@ -127,7 +129,7 @@
<string name="mpris_notification_settings_summary">Permite\'l control de reproductores multimedia ensin abrir KDE Connect</string>
<string name="share_to">Compartir con...</string>
<string name="protocol_version_newer">Esti preséu una versión nueva del protocolu</string>
<string name="plugin_settings_with_name">Axustes: %s</string>
<string name="plugin_settings_with_name">%s</string>
<string name="custom_devices_settings">Llista de preseos personalizada</string>
<string name="custom_device_list">Amestar preseos pola IP</string>
<string name="custom_device_deleted">Desanicióse\'l preséu personalizáu</string>
@@ -196,6 +198,7 @@
<string name="settings_more_settings_title">Más axustes</string>
<string name="setting_persistent_notification">Amosar un avisu permanente</string>
<string name="setting_persistent_notification_oreo">Avisu permanente</string>
<string name="setting_persistent_notification_description">Toca pa des/activalu n\'Avisos</string>
<string name="extra_options">Opciones adicionales</string>
<string name="privacy_options">Opciones de la privacidá</string>
<string name="set_privacy_options">Afita les opciones de la privacidá</string>

View File

@@ -238,7 +238,7 @@
<string name="addcommand_explanation2">Podeu afegir ordres noves a l\'Arranjament del sistema del KDE Connect</string>
<string name="add_command_description">Podeu afegir ordres per a l\'escriptori</string>
<string name="pref_plugin_mprisreceiver">Control del reproductor multimèdia</string>
<string name="pref_plugin_mprisreceiver_desc">Controla els reproductors multimèdia dels telèfons des d\'un altre dispositiu</string>
<string name="pref_plugin_mprisreceiver_desc">Controla els reproductors multimèdia del telèfon des d\'un altre dispositiu</string>
<string name="notification_channel_default">Altres notificacions</string>
<string name="notification_channel_persistent">Indicador de persistent</string>
<string name="notification_channel_media_control">Control multimèdia</string>

View File

@@ -254,7 +254,6 @@
<string name="addcommand_explanation2">Nové příkazy můžete přidat v nastavení systému KDE Connect</string>
<string name="add_command_description">V pracovním prostředí můžete přidat příkazy</string>
<string name="pref_plugin_mprisreceiver">Ovládání přehrávače médií</string>
<string name="pref_plugin_mprisreceiver_desc">Ovládejte přehrávače médií na vašem telefonu z jiného zařízení</string>
<string name="notification_channel_default">Ostatní oznámení</string>
<string name="notification_channel_persistent">Stálý ukazatel</string>
<string name="notification_channel_media_control">Ovládání médií</string>

View File

@@ -238,7 +238,7 @@
<string name="addcommand_explanation2">You can add new commands in the KDE Connect System Settings</string>
<string name="add_command_description">You can add commands on the desktop</string>
<string name="pref_plugin_mprisreceiver">Media Player Control</string>
<string name="pref_plugin_mprisreceiver_desc">Control your phones media players from another device</string>
<string name="pref_plugin_mprisreceiver_desc">Control your phone\'s media players from another device</string>
<string name="notification_channel_default">Other notifications</string>
<string name="notification_channel_persistent">Persistent indicator</string>
<string name="notification_channel_media_control">Media control</string>

View File

@@ -238,7 +238,6 @@
<string name="addcommand_explanation2">Puede añadir nuevas órdenes en las preferencias del sistema de KDE Connect</string>
<string name="add_command_description">Puede añadir órdenes en su escritorio</string>
<string name="pref_plugin_mprisreceiver">Control del reproductor de medios</string>
<string name="pref_plugin_mprisreceiver_desc">Controle los reproductores de medios de sus teléfonos desde otro dispositivo</string>
<string name="notification_channel_default">Otras notificaciones</string>
<string name="notification_channel_persistent">Indicador persistente</string>
<string name="notification_channel_media_control">Control multimedia</string>

View File

@@ -193,7 +193,6 @@
<string name="addcommand_explanation2">Komando berriak gehitu ditzakezu KDE Connect sistemaren ezarpenetan</string>
<string name="add_command_description">Komandoak gehitu ditzakezu mahaigainean</string>
<string name="pref_plugin_mprisreceiver">Euskarri-jotzailearen kontrola</string>
<string name="pref_plugin_mprisreceiver_desc">Kontrolatu zure telefonoen euskarri-jotzailea beste gailu batetik</string>
<string name="notification_channel_default">Beste jakinarazpen batzuk</string>
<string name="notification_channel_persistent">Adierazle iraunkorra</string>
<string name="notification_channel_media_control">Euskarrien kontrola</string>

View File

@@ -237,7 +237,6 @@
<string name="addcommand_explanation2">Voit lisätä uusia komentoja KDE Connectin järjestelmäasetuksissa</string>
<string name="add_command_description">Voit lisätä komentoja työpöydälle</string>
<string name="pref_plugin_mprisreceiver">Mediasoittimen hallinta</string>
<string name="pref_plugin_mprisreceiver_desc">Hallitse puhelimesi mediasoittimia toiselta laitteelta</string>
<string name="notification_channel_default">Muut ilmoitukset</string>
<string name="notification_channel_persistent">Pysyvä ilmaisin</string>
<string name="notification_channel_media_control">Mediaohjaimet</string>

View File

@@ -98,6 +98,14 @@
<item quantity="one">Fichier : %1s</item>
<item quantity="other">(Fichier %2$d sur %3$d) : %1$s</item>
</plurals>
<plurals name="outgoing_file_title">
<item quantity="one">Envoi de %1$d fichier à %2$s</item>
<item quantity="other">Envoi de %1$d fichiers à %2$s</item>
</plurals>
<plurals name="outgoing_files_text">
<item quantity="one">Fichier : %1$s</item>
<item quantity="other">(Fichier %2$d sur %3$d) : %1$s</item>
</plurals>
<plurals name="received_files_title">
<item quantity="one">Fichier reçu de %1$s</item>
<item quantity="other">%2$d fichiers reçus de %1$s</item>
@@ -106,6 +114,14 @@
<item quantity="one">Impossible de recevoir le fichier depuis %1$s</item>
<item quantity="other">Impossible de recevoir %2$d fichiers sur %3$d depuis %1$s</item>
</plurals>
<plurals name="sent_files_title">
<item quantity="one">Fichier envoyé à %1$s</item>
<item quantity="other">%2$d fichiers envoyés à %1$s</item>
</plurals>
<plurals name="send_files_fail_title">
<item quantity="one">Impossible d\'envoyer le fichier à %1$s</item>
<item quantity="other">Impossible d\'envoyer %2$d fichiers sur %3$d à %1$s</item>
</plurals>
<string name="received_file_text">Appuyez pour ouvrir %1s</string>
<string name="cannot_create_file">Impossible de créer le fichier %s</string>
<string name="tap_to_answer">Cliquer pour répondre</string>
@@ -188,6 +204,7 @@
<string name="device_rename_confirm">Renommer</string>
<string name="refresh">Mettre à jour</string>
<string name="unreachable_description">Ce périphérique associé n\'est pas accessible. Assurez-vous qu\'il est bien connecté au même réseau.</string>
<string name="no_wifi">Vous n\'êtes connecté à aucun réseau Wi-Fi, il est possible que vous ne puissiez afficher aucun appareil. Cliquez ici pour activer le Wi-Fi.</string>
<string name="no_file_browser">Aucun navigateur de fichiers installé.</string>
<string name="pref_plugin_telepathy">Envoyer un SMS</string>
<string name="pref_plugin_telepathy_desc">Envoyer des SMS depuis votre bureau</string>
@@ -204,6 +221,7 @@
<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 partager des fichiers entre votre téléphone et votre ordinateur, veuillez permettre l\'accès à la mémoire de stockage du téléphone</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>
<string name="contacts_permission_explanation">Pour partager votre carnet de contacts avec votre ordinateur, veuillez permettre l\'accès aux contacts du téléphone</string>
<string name="select_ringtone">Sélectionnez une sonnerie</string>
@@ -220,7 +238,6 @@
<string name="addcommand_explanation2">Vous pouvez ajouter de nouvelles commandes dans la configuration système de KDE Connect</string>
<string name="add_command_description">Vous pouvez ajouter des commandes sur votre ordinateur</string>
<string name="pref_plugin_mprisreceiver">Contrôle du lecteur multimédia</string>
<string name="pref_plugin_mprisreceiver_desc">Contrôlez les lecteurs multimédia de vos téléphones depuis un autre appareil</string>
<string name="notification_channel_default">Autres notifications</string>
<string name="notification_channel_persistent">Indicateur persistant</string>
<string name="notification_channel_media_control">Contrôle multimédia</string>
@@ -256,4 +273,6 @@
<string name="take_picture">Lancer l\'appareil photo</string>
<string name="plugin_photo_desc">Lancer l\'application appareil photo pour prendre et transférer des photos</string>
<string name="no_app_for_opening">Aucune application adaptée trouvée pour ouvrir ce fichier.</string>
<string name="remote_keyboard_service">Clavier à distance KDE Connect</string>
<string name="presenter_pointer">Pointeur</string>
</resources>

View File

@@ -238,7 +238,7 @@
<string name="addcommand_explanation2">Pode engadir novas ordes desde a configuración do sistema de KDE Connect.</string>
<string name="add_command_description">Pode engadir ordes no escritorio.</string>
<string name="pref_plugin_mprisreceiver">Control do reprodutor de multimedia</string>
<string name="pref_plugin_mprisreceiver_desc">Controlar os reprodutores do seu móbil desde outro dispositivo.</string>
<string name="pref_plugin_mprisreceiver_desc">Controlar os reprodutores do seu móbil desde outro dispositivo</string>
<string name="notification_channel_default">Outras notificacións</string>
<string name="notification_channel_persistent">Indicador persistente</string>
<string name="notification_channel_media_control">Control de reprodución</string>

View File

@@ -186,5 +186,4 @@
<string name="addcommand_explanation2">"Kamu bisa menambahkan perintah baru dalam System Settings KDE Connect "</string>
<string name="add_command_description">Kamu bisa menambahkan perintah pada desktop</string>
<string name="pref_plugin_mprisreceiver">Kendali Pemutar Media</string>
<string name="pref_plugin_mprisreceiver_desc">Kendalikan pemutar media teleponmu dari perangkat lainnya</string>
</resources>

View File

@@ -230,7 +230,6 @@
<string name="addcommand_explanation2">KDE Connect のシステム設定で新しいコマンドを追加できます</string>
<string name="add_command_description">デスクトップから新しいコマンドを追加できます</string>
<string name="pref_plugin_mprisreceiver">メディアプレーヤーの操作</string>
<string name="pref_plugin_mprisreceiver_desc">他のデバイスからスマートフォンのメディアプレーヤーを操作</string>
<string name="notification_channel_default">他の通知</string>
<string name="notification_channel_persistent">永続的なインジケータ</string>
<string name="notification_channel_media_control">メディアの操作</string>

View File

@@ -230,7 +230,6 @@
<string name="addcommand_explanation2">시스템 설정의 KDE Connect에서 새로운 명령을 추가할 수 있습니다</string>
<string name="add_command_description">데스크톱에서 명령을 추가할 수 있습니다</string>
<string name="pref_plugin_mprisreceiver">미디어 재생기 제어</string>
<string name="pref_plugin_mprisreceiver_desc">다른 장치에서 휴대폰 미디어 재생기 제어</string>
<string name="notification_channel_default">기타 알림</string>
<string name="notification_channel_persistent">항상 표시된 표시기</string>
<string name="notification_channel_media_control">미디어 제어</string>

View File

@@ -253,7 +253,6 @@
<string name="addcommand_explanation2">Galite pridėti naujas komandas KDE Connect sistemos nustatymuose</string>
<string name="add_command_description">Galite pridėti komandas darbalaukyje</string>
<string name="pref_plugin_mprisreceiver">Medijos leistuvės valdymas</string>
<string name="pref_plugin_mprisreceiver_desc">Valdyti savo telefonų medijos leistuves iš kito įrenginio</string>
<string name="notification_channel_default">Kiti pranešimai</string>
<string name="notification_channel_persistent">Pastovus indikatorius</string>
<string name="notification_channel_media_control">Įvairialypės terpės valdymas</string>

View File

@@ -238,7 +238,6 @@
<string name="addcommand_explanation2">Du kan leggja til nye kommandoar i systeminnstillingane til KDE Connect</string>
<string name="add_command_description">Du kan leggja til kommandoar på skrivebordet</string>
<string name="pref_plugin_mprisreceiver">Mediespelarkontrollar</string>
<string name="pref_plugin_mprisreceiver_desc">Kontroller mediespelarar på telefonen din frå ei anna eining</string>
<string name="notification_channel_default">Andre varslingar</string>
<string name="notification_channel_persistent">Evigvarande varslingar</string>
<string name="notification_channel_media_control">Mediestyring</string>

View File

@@ -238,7 +238,7 @@
<string name="addcommand_explanation2">Você pode adicionar novos comandos nas Configurações do Sistema KDE Connect</string>
<string name="add_command_description">Você pode adicionar comandos no ambiente de trabalho</string>
<string name="pref_plugin_mprisreceiver">Controle do reprodutor de mídia</string>
<string name="pref_plugin_mprisreceiver_desc">Controle os reprodutores de mídias dos seus celulares a partir de outro dispositivo</string>
<string name="pref_plugin_mprisreceiver_desc">Controle os reprodutores de mídias do seu celular a partir de outro dispositivo</string>
<string name="notification_channel_default">Outras notificações</string>
<string name="notification_channel_persistent">Indicador persistente</string>
<string name="notification_channel_media_control">Controle multimídia</string>

View File

@@ -253,7 +253,6 @@
<string name="addcommand_explanation2">Вы можете добавить новые команды в «Параметрах системы» в разделе «KDE Connect».</string>
<string name="add_command_description">Команды возможно добавлять с ПК</string>
<string name="pref_plugin_mprisreceiver">Управление мультимедиа</string>
<string name="pref_plugin_mprisreceiver_desc">Управление воспроизведением на телефоне с другого устройства</string>
<string name="notification_channel_default">Прочие уведомления</string>
<string name="notification_channel_persistent">Постоянный индикатор</string>
<string name="notification_channel_media_control">Управление воспроизведением</string>

View File

@@ -254,7 +254,6 @@
<string name="addcommand_explanation2">Môžete pridať nové príkazy v KDE Connect systémových nastaveniach</string>
<string name="add_command_description">Môžete pridať príkazy na počítači</string>
<string name="pref_plugin_mprisreceiver">Multimediálny ovládač</string>
<string name="pref_plugin_mprisreceiver_desc">Ovládajte mediálne prehrávače vášho telefónu z iného zariadenia</string>
<string name="notification_channel_default">Ostatné upozornenia</string>
<string name="notification_channel_persistent">Trvalý indikátor</string>
<string name="notification_channel_media_control">Multimediálny ovládač</string>

View File

@@ -237,7 +237,6 @@
<string name="addcommand_explanation2">KDE Connect Sistem Ayarlarında yeni komutlar ekleyebilirsiniz</string>
<string name="add_command_description">Masaüstüne komut ekleyebilirsiniz</string>
<string name="pref_plugin_mprisreceiver">Medya Oynatıcı Kontrolü</string>
<string name="pref_plugin_mprisreceiver_desc">Telefonunuzun medya oynatıcılarını başka bir cihazdan kontrol edin</string>
<string name="notification_channel_default">Diğer bildirimler</string>
<string name="notification_channel_persistent">Kalıcı gösterge</string>
<string name="notification_channel_media_control">Medya kontrolü</string>

View File

@@ -230,7 +230,6 @@
<string name="addcommand_explanation2">您可以在 KDE Connect 系统设置中添加新命令</string>
<string name="add_command_description">您可以在桌面添加新命令</string>
<string name="pref_plugin_mprisreceiver">控制媒体播放器</string>
<string name="pref_plugin_mprisreceiver_desc">从其他设备控制您手机的媒体播放器</string>
<string name="notification_channel_default">其他通知</string>
<string name="notification_channel_persistent">持久性通知</string>
<string name="notification_channel_media_control">媒体控制</string>

View File

@@ -294,7 +294,7 @@
<string name="addcommand_explanation2">You can add new commands in the KDE Connect System Settings</string>
<string name="add_command_description">You can add commands on the desktop</string>
<string name="pref_plugin_mprisreceiver">Media Player Control</string>
<string name="pref_plugin_mprisreceiver_desc">Control your phones media players from another device</string>
<string name="pref_plugin_mprisreceiver_desc">Control your phone\'s media players from another device</string>
<string name="notification_channel_default">Other notifications</string>
<string name="notification_channel_persistent">Persistent indicator</string>

View File

@@ -139,10 +139,6 @@ public class NotificationsPlugin extends Plugin implements NotificationReceiver.
service.addListener(NotificationsPlugin.this);
serviceReady = service.isConnected();
if (serviceReady) {
sendCurrentNotifications(service);
}
});
return true;
@@ -157,7 +153,6 @@ public class NotificationsPlugin extends Plugin implements NotificationReceiver.
@Override
public void onListenerConnected(NotificationReceiver service) {
serviceReady = true;
sendCurrentNotifications(service);
}
@Override

View File

@@ -197,7 +197,7 @@ public class SftpSettingsFragment
for (int i = 0, count = preferenceCategory.getPreferenceCount(); i < count; i++) {
StoragePreference preference = (StoragePreference) preferenceCategory.getPreference(i);
preference.setSelectable(true);
preference.setInSelectionMode(true);
preference.checkbox.setChecked(selectedItems.get(i, false));
}
}
@@ -403,6 +403,11 @@ public class SftpSettingsFragment
}
private void handleChangedStorageInfoList() {
if (actionMode != null) {
actionMode.finish(); // In case we are in selection mode, finish it
}
saveStorageInfoList();
preferenceCategory.removeAll();
@@ -443,7 +448,7 @@ public class SftpSettingsFragment
if (actionMode != null) {
for (int i = 0, count = preferenceCategory.getPreferenceCount(); i < count; i++) {
StoragePreference preference = (StoragePreference) preferenceCategory.getPreference(i);
preference.setSelectable(true);
preference.setInSelectionMode(true);
if (storagePreference.equals(preference)) {
preference.checkbox.setChecked(true);
}
@@ -485,7 +490,6 @@ public class SftpSettingsFragment
}
}
actionMode.finish(); //This must be called before handleChangedStorageInfoList()
handleChangedStorageInfoList();
return true;
default:
@@ -499,7 +503,7 @@ public class SftpSettingsFragment
for (int i = 0, count = preferenceCategory.getPreferenceCount(); i < count; i++) {
StoragePreference preference = (StoragePreference) preferenceCategory.getPreference(i);
preference.setSelectable(false);
preference.setInSelectionMode(false);
preference.checkbox.setChecked(false);
}
}

View File

@@ -43,6 +43,14 @@ public class StoragePreference extends DialogPreference {
private OnLongClickListener onLongClickListener;
@BindView(R.id.checkbox) CheckBox checkbox;
public boolean inSelectionMode;
public void setInSelectionMode(boolean inSelectionMode) {
if (this.inSelectionMode != inSelectionMode) {
this.inSelectionMode = inSelectionMode;
notifyChanged();
}
}
public StoragePreference(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -50,7 +58,7 @@ public class StoragePreference extends DialogPreference {
setDialogLayoutResource(R.layout.fragment_storage_preference_dialog);
setWidgetLayoutResource(R.layout.preference_checkbox);
setPersistent(false);
setSelectable(false);
inSelectionMode = false;
}
public StoragePreference(Context context) {
@@ -109,7 +117,7 @@ public class StoragePreference extends DialogPreference {
ButterKnife.bind(this, holder.itemView);
checkbox.setVisibility(isSelectable() ? View.VISIBLE : View.INVISIBLE);
checkbox.setVisibility(inSelectionMode ? View.VISIBLE : View.INVISIBLE);
holder.itemView.setOnLongClickListener(v -> {
if (onLongClickListener != null) {
@@ -122,7 +130,7 @@ public class StoragePreference extends DialogPreference {
@Override
protected void onClick() {
if (isSelectable()) {
if (inSelectionMode) {
checkbox.setChecked(!checkbox.isChecked());
} else {
super.onClick();