diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 7e94b4b9..d407a757 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="1600" + android:versionName="1.6"> @@ -138,6 +138,7 @@ diff --git a/res/layout/activity_device.xml b/res/layout/activity_device.xml index 9bb47993..43028053 100644 --- a/res/layout/activity_device.xml +++ b/res/layout/activity_device.xml @@ -70,7 +70,7 @@ + + Avisador telefónicu Unvia avisos pa SMS y llamaes Informe de batería - Informe periódicu del estáu de la batería - Permite restolar remotamente a esti preséu + Infoma davezu del estáu de la batería Sincronización del cartafueyu Comparte\'l conteníu del cartafueyu Entrada remota - Usa\'l to teléfonu o tableta como panel táutil y tecláu - Pulsaciones remotes - Controles multimedia - Forne un control remotu pal to reproductor multimedia - Execución de comandos - Aiciona comandos remotos del to teléfonu o tableta + Controles remotos multimedia Ping Unvia y recibe pings Sincronización d\'avisos - Accede a los tos avisos d\'otros preseos - Recibir avisos - Recibe avisos d\'otros preseos y amuésalos n\'Android - Compartir y recibir + Accede a los tos avisos dende otros preseos + Unvia y recibi pings Comparte ficheros y URLs ente preseos Esta carauterística nun ta disponible na to versión d\'Android Ensin preseos @@ -31,9 +23,9 @@ Unviar ping Control multimedia - Right click - Middle click - Nothing + Clic drechu + Clic d\'en mediu + Nada Slowest @@ -43,14 +35,97 @@ Fastest Escosó\'l tiempu + Preseos coneutaos + Preseos disponibles + Preseos recordaos + El preséu empareyáu nun ye agamable + Preséu desconocíu + Nun ye algamable\'l preséu + Empareyamientu yá solicitáu + El preséu yá ta empareyáu + Nun pudo unviase\'l paquete + Encaboxáu pol usuariu + Encaboxáu pola otra parte + Recibióse una clave non válida + Solicitóse l\'empareyamientu + Solicitú d\'empareyamientu de %1s + Recibióse l\'enllaz de %1s + Calca p\'abrir «%1s» + Ficheru entrante de %1s + %1s + Unviando ficheru a %1s + %1s + Recibióse\'l ficheru de %1s + Fallu al recibir el ficheru de %1s + Tap to open \'%1s\' + Unvióse\'l ficheru a %1s + %1s + %1s + Calca pa responder + Reconeutar + Amosar tecláu + Preséu non empareyáu + Solicitar empareyamientu + Aceutar + Refugar + Preséu + Empareyar preséu + Control remotu + Axustes KDE Connect + Reproducir + Anterior + Rebobinar + Avance rápidu + Siguiente + Volume + Axustes multimedia + Botones d\'avanzar/rebobinar + Axusta\'l tiempu p\'avanzar/rebobinar al primise - 10 seconds - 20 seconds - 30 seconds - 1 minute - 2 minutes + 10 segundos + 20 segundos + 30 segundos + 1 minutu + 2 minutos Nun hai restoladores de ficheros instalaos + Esti preséu usa una versión vieya del protocolu + Esti preséu usa una versión anovada del protocolu + Axustes xenerales + Axustes + Axustes de %s + Nome de preséu + %s + Nome de preséu non válidu + Recibióse\'l testu y guardóse nel cartafueyu + Llista de preseos personalizada + Empareyar con un preséu nuevu + Desempareyar %s + Amestar preseos pola IP + Avisos sonoros + Fai vibrar y reproduz un soníu al recibir un ficheru + Peñera d\'avisos + Los avisos sincronizaránse coles aplicaciones esbillaes. + Almacenamientu internu + Tolos ficheros + Tarxeta SD %d + Tarxeta SD + (namai llectura) + Semeyes de cámara + Amestar agospiu/IP + Nome d\'agospiu o IP + Nun s\'alcontraron reproductores + Usa esta opción namái si\'l to preséu nun se deteuta automáticamente. Introduz la direición o\'l nome d\'agospiu y toca\'l botón p\'amestalu a la llista. Toca un elementu esistente pa desanicialu de la llista. + %1$s en %2$s + Unviar ficheros + Preseos KDE Connect + Deberíen apaecer equí otros preseos executando KDE Connect. + Preséu empareyáu + Renomar preséu + Renomar + Refrescar + Esti preséu empareyáu nun ye algamable. Asegúrate que ta coneutáu a la to mesma rede. + Unviar SMS Unvia mensaxes de testu dende\'l to escritoriu Esti complementu nun lu sofita\'l preséu Fai sonar el teléfonu pa qu\'asina pueas alcontralu diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml index 9856b85a..6d090953 100644 --- a/res/values-ca/strings.xml +++ b/res/values-ca/strings.xml @@ -10,8 +10,8 @@ Comparteix el contingut del porta-retalls Entrada remota Usa el vostre telèfon o tauleta com un ratolí i un teclat - S\'estan rebent pulsacions de tecla remotes - S\'estan rebent esdeveniments de pulsacions de tecla des de dispositius remots + Rep les pulsacions de tecla remotes + Rep els esdeveniments de pulsacions de tecla des de dispositius remots Controls multimèdia Proporciona un comandament a distància pel reproductor multimèdia Executa una ordre @@ -33,7 +33,7 @@ Envia un ping Control multimèdia Fes servir les tecles remotes només en editar - No hi ha cap connexió activa amb el teclat remot, establiu-ne una al kde-connect + No hi ha cap connexió activa amb el teclat remot, establiu-ne una al «kdeconnect» La connexió amb el teclat remot està activa Hi ha més d\'una connexió amb un teclat remot, seleccioneu el dispositiu per configurar-lo Entrada remota diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index 655b4eb3..67062450 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -9,17 +9,15 @@ Abgleich der Zwischenablage Inhalt der Zwischenablage freigeben Ferneingabe - Verwendet Ihr Handy als Tablet, Touchpad und Tastatur + Verwendet Ihr Handy als Tablett, Touchpad und Tastatur Multimedia-Bedienung - Eine Fernbedienung für Ihre Medienwiedergabe Befehl ausführen - Von Ihrem Telefon oder Tablet Befehle auf anderen Geräten ausführen + Von Ihrem Telefon oder Tablett Befehle auf anderen Geräten ausführen Ping Senden und Empfangen von Pings Benachrichtigungs-Abgleich Zugriff auf Ihre Benachrichtigungen von anderen Geräten Benachrichtigungen empfangen - Empfangen und Anzeigen von Benachrichtigungen des anderen Geräts Veröffentlichen und Empfangen Dateien und Adressen (URLs) zwischen Geräten teilen Diese Funktion ist in Ihrer Android-Version nicht verfügbar @@ -31,7 +29,6 @@ Ping senden Multimedia-Bedienung Ferneingabe - Bewegen Sie einen Finger auf dem Bildschirm um den Maus-Zeiger zu verschieben. Tippen zum Klicken, mit zwei oder drei Fingern für rechten bzw. mittleren Mausknopf. Tippen und Halten für Ziehen und Ablegen. Aktionsausführung bei Berührung mit zwei Fingern einstellen Aktionsausführung bei Berührung mit drei Fingern einstellen Empfindlichkeit des Touchpads einstellen @@ -46,9 +43,9 @@ Standard Langsamste - Langsam + Above Slowest Standard - Schnell + Above Default Schnellste Verbundene Geräte @@ -69,25 +66,19 @@ Abbruch durch Gegenstelle Ungültiger Schlüssel empfangen Verschlüsselungsinformationen - Das andere Gerät verwendet eine ältere Version von KDE-Connect, eine veraltete Verschlüsselungsmethode wird verwendet. Der SHA1-Fingerabdruck Ihres Gerätezertifikats lautet: Der SHA1-Fingerabdruck des Gerätezertifikats der Gegenstelle lautet: Verbindung angefordert Verbindungsanfrage von %1s Verknüpfung von %1s erhalten - Tippen um „%1s“ zu öffnen Eingehende Datei von %1s %1s Datei wird an %1s gesendet - Datei wird an %1s gesendet %1s - %1$d von %2$d Dateien gesendet Datei von %1s erhalten Der Empfang der Datei %1s ist fehlgeschlagen - Tippen um „%1s“ zu öffnen Datei an %1s gesendet %1s - Das Senden der Datei an %1s ist fehlgeschlagen %1s Tippen zum Antworten Erneut verbinden @@ -95,7 +86,7 @@ Mittelklick senden Tastatur anzeigen Das Gerät ist nicht verbunden - Verbindung anfordern + Verbindung angefordert Annehmen Ablehnen Gerät @@ -110,7 +101,6 @@ Lautstärke Multimedia-Einstellungen Knöpfe Vorwärts/Rückwärts - Sprungweite für Vorlauf/Rücklauf anpassen. 10 Sekunden 20 Sekunden @@ -134,10 +124,6 @@ Geräte nach IP hinzufügen Ausführliche Benachrichtigungen Beim Empfang einer Datei vibrieren und einen Sound abspielen - Zielverzeichnis anpassen - Empfangene Dateien werden in Downloads gespeichert - Dateien werden im folgenden Verzeichnis gespeichert - Zielverzeichnis Benachrichtigungs-Filter Benachrichtigungen werden zwischen den ausgewählten Anwendungen abgeglichen. Interner Speicher @@ -149,23 +135,21 @@ Rechner/IP hinzufügen Rechnername oder IP Keine Medienspieler gefunden - Benutzen Sie diese Funktion nur, wenn Ihr Gerät nicht automatisch erkannt wird. Geben hier Sie IP-Adresse oder Hostnamen ein und bestätigen Sie, um es zu der Liste hinzuzufügen. Tippen Sie ein bestehendes Gerät an, um es aus der Liste zu entfernen. %1$s auf %2$s Dateien senden KDE-Connect-Geräte - Andere Geräte im selben Netzwerk, auf denen KDE-Connect läuft, sollten hier angezeigt werden. + Andere Geräte, auf denen KDE-Connect läuft im gleichen Netzwerk,sollte hier angezeigt werden. Gerät verbunden Geräte umbenennen Umbenennen Aktualisieren - Das verbundene Gerät ist nicht erreichbar. Stellen Sie sicher daß es mit demselben Netzwerk verbunden ist. Es sind keine Dateiverwaltungsprogramme installiert. SMS senden Text-Nachrichten von Ihrer Arbeitsfläche senden Dieses Modul wird durch das Gerät nicht unterstützt Mein Telefon suchen - Mein Tablet suchen - Ruft dieses Gerät an, damit sie es finden können + Mein Tablett suchen + Ruft dieses Gerät an, um es zu suchen. Gefunden Öffnen Schließen diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml index 48b1c1c9..10c798e0 100644 --- a/res/values-gl/strings.xml +++ b/res/values-gl/strings.xml @@ -139,7 +139,7 @@ Outros dispositivos que estean a executar KDE Connect na mesma rede deberían aparecer aquí. Emparellouse co dispositivo Cambiar o nome do dispositivo - Cambiar o nome + Mudar o nome Actualizar Este dispositivo emparellado está fóra do alcance. Asegúrese de que está conectado á mesma rede. Non hai navegadores de ficheiros instalados. diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index aedc18d6..33209741 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -10,8 +10,6 @@ Udostępnij zawartość schowka Zdalne sterowanie Użyj swojego telefonu lub tabletu jako myszy i klawiatury - Odbieraj zdalne naciśnięcia klawiszy - Odbieraj naciśnięcia klawiszy od urządzeń zdalnych Sterowanie multimediami Zapewnia zdalne sterowanie twoim odtwarzaczem multimedialnym Wykonaj polecenie @@ -32,10 +30,6 @@ Musisz przydzielić uprawnienia, aby uzyskać dostęp do powiadomień Wyślij ping Sterowanie multimediami - Obsługuj zdalne naciśnięcia klawiszy tylko podczas edycji - Nie istnieje połączenie zdalnej klawiatury, nawiąż takie połączenie w kdeconnect - Połączenie zdalnej klawiatury jest nawiązane - Nawiązano więcej niż jedno połączenie zdalnej klawiatury, wybierz urządzenie do ustawienia Zdalne sterowanie Przesuń palcem po ekranie, aby przesunąć wskaźnik myszy. Stuknij, aby wywołać naciśniecie lewym przyciskiem myszy i użyj dwóch/trzech palców, aby wywołać naciśniecie prawym i środkowym przyciskiem myszy. Przyciśnij na dłużej, aby przeciągnąć i upuścić. Ustaw działanie po dwukrotnym stuknięciu palcem diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml index a5d85f90..13616b40 100644 --- a/res/values-sk/strings.xml +++ b/res/values-sk/strings.xml @@ -10,6 +10,8 @@ Zdieľať obsah schránky Vzdialený vstup Použiť váš telefón alebo tablet ako touchpad a klávesnicu + Prijímať vzdialené stlačenia klávesov + Prijímať udalosti stlačení klávesov od vzdialených zariadení Multimediálne ovládače Poskytuje vzdialené ovládanie pre váš prehrávač médií Spustiť príkaz @@ -30,6 +32,10 @@ Musíte povoliť oprávnenia na prístup k pripomienkam Poslať ping Multimediálny ovládač + Spracúva vzdialené klávesy len pri editácii + Nie sú žiadne aktívne pripojenia vzdialenej klávesnice, vytvorte nejaké v Kdeconnect + Vzdialené pripojenie klávesnice je aktívne + Je viac ako jedno vzdialené pripojenie klávesnice, vyberte zariadenie na nastavenie Vzdialený vstup Posúvajte prst na obrazovke na posun kurzora. Ťuknutie vyvolá klik a použite dva/tri prsty pre pravé a stredné tlačidlo. Použite dlhé stlačenie pre drag and drop. Nastaviť akciu dvoch prstov diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index a552cd56..31311c26 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -8,10 +8,8 @@ Gör det möjligt att bläddra i apparatens filsystem från annan apparat Synkronisera klippbord Dela klippbordets innehåll - Extern inmatning + Fjärrinmatning Använd telefonen eller surfplattan som mus och tangentbord - Ta emot externa tangentnedtryckningar - Ta emot tangentnedtryckningar från externa enheter Multimediakontroller Tillhandahåller en fjärrkontroll för mediaspelaren Kör kommando @@ -32,11 +30,7 @@ Du måste ge rättighet att komma åt underrättelser Skicka ping Kontroll av multimedia - Hantera bara externa tangenter vid redigering - Det finns ingen aktiv anslutning till externt tangentbord, upprätta en i KDE-anslut - Anslutning till externt tangentbord är aktiv - Det finns mer än en anslutning till externt tangentbord, välj enhet att anpassa - Extern inmatning + Fjärrinmatning Flytta fingret på skärmen för att röra muspekaren. Rör för att klicka, och använd två eller tre fingrar för höger- och mittenknapparna. Använd en längre beröring för drag och släpp. Ställ in åtgärd vid två fingerberöringar Ställ in åtgärd vid tre fingerberöringar diff --git a/res/values/strings.xml b/res/values/strings.xml index 6259f824..f78801be 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -193,6 +193,7 @@ Rename Refresh This paired device is not reachable. Make sure it is connected to your same network. + It looks like you are on a mobile data connection. KDE Connect only works on local networks. There are no file browsers installed. Send SMS Send text messages from your desktop diff --git a/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java b/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java index 2a7f99c2..867ce6db 100644 --- a/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java +++ b/src/org/kde/kdeconnect/Backends/LanBackend/LanLinkProvider.java @@ -31,6 +31,7 @@ import org.kde.kdeconnect.Backends.BaseLinkProvider; import org.kde.kdeconnect.BackgroundService; import org.kde.kdeconnect.Device; import org.kde.kdeconnect.Helpers.DeviceHelper; +import org.kde.kdeconnect.Helpers.NetworkHelper; import org.kde.kdeconnect.Helpers.SecurityHelpers.SslHelper; import org.kde.kdeconnect.Helpers.StringsHelper; import org.kde.kdeconnect.NetworkPackage; @@ -68,18 +69,18 @@ public class LanLinkProvider extends BaseLinkProvider implements LanLink.LinkDis final static int MAX_PORT = 1764; final static int PAYLOAD_TRANSFER_MIN_PORT = 1739; - private final Context context; + final Context context; private final HashMap visibleComputers = new HashMap<>(); //Links by device id - private ServerSocket tcpServer; + ServerSocket tcpServer; private DatagramSocket udpServer; private DatagramSocket udpServerOldPort; - private boolean listening = false; + boolean listening = false; // To prevent infinte loop between Android < IceCream because both device can only broadcast identity package but cannot connect via TCP - private ArrayList reverseConnectionBlackList = new ArrayList<>(); + ArrayList reverseConnectionBlackList = new ArrayList<>(); @Override // SocketClosedCallback public void linkDisconnected(LanLink brokenLink) { @@ -89,7 +90,7 @@ public class LanLinkProvider extends BaseLinkProvider implements LanLink.LinkDis } //They received my UDP broadcast and are connecting to me. The first thing they sned should be their identity. - public void tcpPackageReceived(Socket socket) throws Exception { + void tcpPackageReceived(Socket socket) throws Exception { NetworkPackage networkPackage; try { @@ -112,7 +113,7 @@ public class LanLinkProvider extends BaseLinkProvider implements LanLink.LinkDis } //I've received their broadcast and should connect to their TCP socket and send my identity. - protected void udpPacketReceived(DatagramPacket packet) throws Exception { + void udpPacketReceived(DatagramPacket packet) throws Exception { final InetAddress address = packet.getAddress(); @@ -171,7 +172,7 @@ public class LanLinkProvider extends BaseLinkProvider implements LanLink.LinkDis } } - private void configureSocket(Socket socket) { + void configureSocket(Socket socket) { try { socket.setKeepAlive(true); } catch (SocketException e) { @@ -360,7 +361,12 @@ public class LanLinkProvider extends BaseLinkProvider implements LanLink.LinkDis throw new IOException("No ports available"); } - void broadcastUdpPackage() { + private void broadcastUdpPackage() { + + if (NetworkHelper.isOnMobileNetwork(context)) { + Log.w("LanLinkProvider", "On 3G network, not sending broadcast."); + return; + } new Thread(new Runnable() { @Override diff --git a/src/org/kde/kdeconnect/BackgroundService.java b/src/org/kde/kdeconnect/BackgroundService.java index 7b5ef04a..ca6c2cca 100644 --- a/src/org/kde/kdeconnect/BackgroundService.java +++ b/src/org/kde/kdeconnect/BackgroundService.java @@ -119,7 +119,7 @@ public class BackgroundService extends Service { } }; - private void onDeviceListChanged() { + public void onDeviceListChanged() { for(DeviceListChangedCallback callback : deviceListChangedCallbacks.values()) { callback.onDeviceListChanged(); } diff --git a/src/org/kde/kdeconnect/Helpers/NetworkHelper.java b/src/org/kde/kdeconnect/Helpers/NetworkHelper.java new file mode 100644 index 00000000..0f6d17cd --- /dev/null +++ b/src/org/kde/kdeconnect/Helpers/NetworkHelper.java @@ -0,0 +1,16 @@ +package org.kde.kdeconnect.Helpers; + +import android.content.Context; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; +import android.util.Log; + +public class NetworkHelper { + + public static boolean isOnMobileNetwork(Context context) { + final ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo info = connMgr.getActiveNetworkInfo(); + return (info != null && info.getType() == ConnectivityManager.TYPE_MOBILE); + } + +} diff --git a/src/org/kde/kdeconnect/KdeConnectBroadcastReceiver.java b/src/org/kde/kdeconnect/KdeConnectBroadcastReceiver.java index e43afbab..2cb73f34 100644 --- a/src/org/kde/kdeconnect/KdeConnectBroadcastReceiver.java +++ b/src/org/kde/kdeconnect/KdeConnectBroadcastReceiver.java @@ -67,6 +67,7 @@ public class KdeConnectBroadcastReceiver extends BroadcastReceiver BackgroundService.RunCommand(context, new BackgroundService.InstanceCallback() { @Override public void onServiceStart(BackgroundService service) { + service.onDeviceListChanged(); service.onNetworkChange(); } }); diff --git a/src/org/kde/kdeconnect/Plugins/FindMyPhonePlugin/FindMyPhoneActivity.java b/src/org/kde/kdeconnect/Plugins/FindMyPhonePlugin/FindMyPhoneActivity.java index 2ebba699..fa4f6a77 100644 --- a/src/org/kde/kdeconnect/Plugins/FindMyPhonePlugin/FindMyPhoneActivity.java +++ b/src/org/kde/kdeconnect/Plugins/FindMyPhonePlugin/FindMyPhoneActivity.java @@ -21,7 +21,12 @@ public class FindMyPhoneActivity extends Activity { @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); - finish(); //If this activity was already open and we received the ring packet again, just finish it + + if(ringtone != null) { + // If this activity was already open and we received the ring packet again, just finish it + finish(); + } + // otherwise the activity will become active again } @Override @@ -40,6 +45,11 @@ public class FindMyPhoneActivity extends Activity { finish(); } }); + } + + @Override + protected void onStart() { + super.onStart(); Uri ringtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE); ringtone = RingtoneManager.getRingtone(getApplicationContext(), ringtoneUri); @@ -61,12 +71,16 @@ public class FindMyPhoneActivity extends Activity { } ringtone.play(); - } @Override - public void finish() { - ringtone.stop(); - super.finish(); + protected void onStop() { + super.onStop(); + + if(ringtone != null) { + ringtone.stop(); + ringtone = null; + } } + } diff --git a/src/org/kde/kdeconnect/UserInterface/DeviceFragment.java b/src/org/kde/kdeconnect/UserInterface/DeviceFragment.java index d97b8f3f..820e8deb 100644 --- a/src/org/kde/kdeconnect/UserInterface/DeviceFragment.java +++ b/src/org/kde/kdeconnect/UserInterface/DeviceFragment.java @@ -40,6 +40,7 @@ import android.widget.TextView; import org.kde.kdeconnect.BackgroundService; import org.kde.kdeconnect.Device; +import org.kde.kdeconnect.Helpers.NetworkHelper; import org.kde.kdeconnect.Helpers.SecurityHelpers.SslHelper; import org.kde.kdeconnect.Plugins.Plugin; import org.kde.kdeconnect.UserInterface.List.CustomItem; @@ -130,10 +131,6 @@ public class DeviceFragment extends Fragment { refreshUI(); - //TODO: Is this needed? - //if (!device.hasPluginsLoaded() && device.isReachable()) { - // device.reloadPluginsFromSettings(); - //} } }); @@ -296,21 +293,6 @@ public class DeviceFragment extends Fragment { public void onResume() { super.onResume(); - //TODO: Is this needed? - /* - BackgroundService.RunCommand(mActivity, new BackgroundService.InstanceCallback() { - @Override - public void onServiceStart(BackgroundService service) { - if (mDeviceId != null) { - Device device = service.getDevice(mDeviceId); - if (device != null && device.isReachable()) { - device.reloadPluginsFromSettings(); - } - } - } - }); - */ - getView().setFocusableInTouchMode(true); getView().requestFocus(); getView().setOnKeyListener(new View.OnKeyListener() { @@ -352,9 +334,11 @@ public class DeviceFragment extends Fragment { boolean paired = device.isPaired(); boolean reachable = device.isReachable(); + boolean onData = NetworkHelper.isOnMobileNetwork(getContext()); rootView.findViewById(R.id.pairing_buttons).setVisibility(paired ? View.GONE : View.VISIBLE); - rootView.findViewById(R.id.unpair_message).setVisibility((paired && !reachable) ? View.VISIBLE : View.GONE); + rootView.findViewById(R.id.not_reachable_message).setVisibility((paired && !reachable && !onData) ? View.VISIBLE : View.GONE); + rootView.findViewById(R.id.on_data_message).setVisibility((paired && !reachable && onData) ? View.VISIBLE : View.GONE); try { ArrayList items = new ArrayList<>(); diff --git a/src/org/kde/kdeconnect/UserInterface/PairingFragment.java b/src/org/kde/kdeconnect/UserInterface/PairingFragment.java index ecf65b0a..c5fe6225 100644 --- a/src/org/kde/kdeconnect/UserInterface/PairingFragment.java +++ b/src/org/kde/kdeconnect/UserInterface/PairingFragment.java @@ -36,6 +36,7 @@ import android.widget.TextView; import org.kde.kdeconnect.BackgroundService; import org.kde.kdeconnect.Device; +import org.kde.kdeconnect.Helpers.NetworkHelper; import org.kde.kdeconnect.UserInterface.List.ListAdapter; import org.kde.kdeconnect.UserInterface.List.PairingDeviceItem; import org.kde.kdeconnect.UserInterface.List.SectionItem; @@ -60,6 +61,8 @@ public class PairingFragment extends Fragment implements PairingDeviceItem.Callb boolean listRefreshCalledThisFrame = false; + TextView headerText; + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { @@ -74,10 +77,10 @@ public class PairingFragment extends Fragment implements PairingDeviceItem.Callb rootView = inflater.inflate(R.layout.activity_list, container, false); - TextView text = new TextView(inflater.getContext()); - text.setText(getString(R.string.pairing_description)); - text.setPadding(0, (int) (16 * getResources().getDisplayMetrics().density), 0, (int) (12 * getResources().getDisplayMetrics().density)); - ((ListView) rootView).addHeaderView(text); + headerText = new TextView(inflater.getContext()); + headerText.setText(getString(R.string.pairing_description)); + headerText.setPadding(0, (int) (16 * getResources().getDisplayMetrics().density), 0, (int) (12 * getResources().getDisplayMetrics().density)); + ((ListView) rootView).addHeaderView(headerText); return rootView; } @@ -104,6 +107,8 @@ public class PairingFragment extends Fragment implements PairingDeviceItem.Callb } listRefreshCalledThisFrame = true; + headerText.setText(getString(NetworkHelper.isOnMobileNetwork(getContext()) ? R.string.on_data_message : R.string.pairing_description)); + try { Collection devices = service.getDevices().values(); final ArrayList items = new ArrayList<>();