Compare commits
1 commit
master
...
work/apol/
Author | SHA1 | Date | |
---|---|---|---|
|
a2ec47b2a6 |
11 changed files with 149 additions and 50 deletions
|
@ -132,7 +132,6 @@
|
||||||
<p xml:lang="nl">KDE Connect maakt dat uw telefoon en computer beter samenwerken: deel uw klembord en heb toegang tot bestanden tussen apparaten, verander uw telefoon in een afstandsbediening voor uw computer, zoek uw telefoon wanneer het achter uw bank is gevallen, bekijk uw telefoonmeldingen vanuit uw computer en veel meer!</p>
|
<p xml:lang="nl">KDE Connect maakt dat uw telefoon en computer beter samenwerken: deel uw klembord en heb toegang tot bestanden tussen apparaten, verander uw telefoon in een afstandsbediening voor uw computer, zoek uw telefoon wanneer het achter uw bank is gevallen, bekijk uw telefoonmeldingen vanuit uw computer en veel meer!</p>
|
||||||
<p xml:lang="nn">KDE Connect lèt deg kopla telefonen din og datamaskina di saman. Du kan dela utklippstavle, få tilgang til filer på tvers av einingane, bruka telefonen som fjernkontroll for datamaskina, finn att telefonen når han har dotte ned bak sofaputene, sjå varslingar frå telefonen på datamaskina – og mykje anna!</p>
|
<p xml:lang="nn">KDE Connect lèt deg kopla telefonen din og datamaskina di saman. Du kan dela utklippstavle, få tilgang til filer på tvers av einingane, bruka telefonen som fjernkontroll for datamaskina, finn att telefonen når han har dotte ned bak sofaputene, sjå varslingar frå telefonen på datamaskina – og mykje anna!</p>
|
||||||
<p xml:lang="pl">KDE Connect sprawia, że twój telefon i komputer lepiej współpracują: udostępnianie twojego schowka i dostęp do plików między urządzeniami, obsługa komputera z telefonu, znajdowanie telefonu, gdy wpadnie za łóżko, oglądanie powiadomień z telefonu na komputerze i wiele więcej!</p>
|
<p xml:lang="pl">KDE Connect sprawia, że twój telefon i komputer lepiej współpracują: udostępnianie twojego schowka i dostęp do plików między urządzeniami, obsługa komputera z telefonu, znajdowanie telefonu, gdy wpadnie za łóżko, oglądanie powiadomień z telefonu na komputerze i wiele więcej!</p>
|
||||||
<p xml:lang="pt-BR">O KDE Connect faz com que seu telefone e computador funcionem melhor juntos: compartilhe sua área de transferência e acesse arquivos entre dispositivos, transforme seu telefone em um controle remoto para seu computador, encontre seu telefone quando ele escorregar para o encosto do sofá, veja as notificações do seu telefone no computador e muito mais!</p>
|
|
||||||
<p xml:lang="sl">KDE Connect izboljša skupno delovanje vašega telefona in računalnika: delite svoje odložišče in dostopajte do datotek med napravami, spremenite svoj telefon v daljinski upravljalnik za svoj računalnik, poiščite svoj telefon, ko je zdrsnil za naslonjalo vašega kavča, oglejte si telefonska obvestila iz vašega računalnika in še veliko več!</p>
|
<p xml:lang="sl">KDE Connect izboljša skupno delovanje vašega telefona in računalnika: delite svoje odložišče in dostopajte do datotek med napravami, spremenite svoj telefon v daljinski upravljalnik za svoj računalnik, poiščite svoj telefon, ko je zdrsnil za naslonjalo vašega kavča, oglejte si telefonska obvestila iz vašega računalnika in še veliko več!</p>
|
||||||
<p xml:lang="sv">KDE-anslut får din telefon och dator att fungera bättre tillsammans: dela klippbordet och få tillgång till filer mellan apparater, förvandla telefonen till en fjärrkontroll för datorn, hitta telefonen när den har glidit ner på baksidan av soffan, se telefonunderrättelser från datorn och mycket mer.</p>
|
<p xml:lang="sv">KDE-anslut får din telefon och dator att fungera bättre tillsammans: dela klippbordet och få tillgång till filer mellan apparater, förvandla telefonen till en fjärrkontroll för datorn, hitta telefonen när den har glidit ner på baksidan av soffan, se telefonunderrättelser från datorn och mycket mer.</p>
|
||||||
<p xml:lang="tr">KDE Bağlan, telefonunuzun ve bilgisayarınızın birlikte daha iyi çalışmasını sağlar: Panonuzu paylaşın ve dosyalara başka aygıtlardan erişin, telefonunuzu bilgisayarınızın uzaktan kumandasına dönüştürün, telefonunuz koltuğunuzun arkasına kaydığında onu bulun, telefon bildirimlerinizi bilgisayarınızdan görün ve çok daha fazlasını yapın!</p>
|
<p xml:lang="tr">KDE Bağlan, telefonunuzun ve bilgisayarınızın birlikte daha iyi çalışmasını sağlar: Panonuzu paylaşın ve dosyalara başka aygıtlardan erişin, telefonunuzu bilgisayarınızın uzaktan kumandasına dönüştürün, telefonunuz koltuğunuzun arkasına kaydığında onu bulun, telefon bildirimlerinizi bilgisayarınızdan görün ve çok daha fazlasını yapın!</p>
|
||||||
|
@ -179,7 +178,7 @@
|
||||||
<value key="KDE::google_play">https://play.google.com/store/apps/details?id=org.kde.kdeconnect_tp</value>
|
<value key="KDE::google_play">https://play.google.com/store/apps/details?id=org.kde.kdeconnect_tp</value>
|
||||||
<value key="KDE::windows_store">https://www.microsoft.com/store/apps/9n93mrmsxbf0</value>
|
<value key="KDE::windows_store">https://www.microsoft.com/store/apps/9n93mrmsxbf0</value>
|
||||||
<value key="KDE::app_store">https://apps.apple.com/app/kde-connect/id1580245991</value>
|
<value key="KDE::app_store">https://apps.apple.com/app/kde-connect/id1580245991</value>
|
||||||
<value key="KDE::supporters">[fat_malama](https://www.instagram.com/fat_malama/); Alexandru Traistaru; Neeko iko; Daniel Lloyd-Miller; [mdPlusPlus](https://github.com/mdPlusPlus)</value>
|
<value key="KDE::supporters">[fat_malama](https://www.instagram.com/fat_malama/); Alexandru Traistaru; Neeko iko; Daniel Lloyd-Miller; mdPlusPlus</value>
|
||||||
</custom>
|
</custom>
|
||||||
<releases>
|
<releases>
|
||||||
<release version="24.08.3" date="2024-11-07"/>
|
<release version="24.08.3" date="2024-11-07"/>
|
||||||
|
|
|
@ -26,8 +26,6 @@
|
||||||
"Description[nn]": "Set opp einingssynkronisering",
|
"Description[nn]": "Set opp einingssynkronisering",
|
||||||
"Description[pa]": "ਡਿਵਾਈਸ ਸੈਕਰੋਨਾਈਜ਼ੇਸ਼ਨ ਦੀ ਸੰਰਚਨਾ",
|
"Description[pa]": "ਡਿਵਾਈਸ ਸੈਕਰੋਨਾਈਜ਼ੇਸ਼ਨ ਦੀ ਸੰਰਚਨਾ",
|
||||||
"Description[pl]": "Ustawienia synchronizacji urządzenia",
|
"Description[pl]": "Ustawienia synchronizacji urządzenia",
|
||||||
"Description[pt_BR]": "Configurar sincronização do dispositivo",
|
|
||||||
"Description[ru]": "Настройка синхронизации устройства",
|
|
||||||
"Description[sl]": "Konfiguriraj sinhronizacijo naprave",
|
"Description[sl]": "Konfiguriraj sinhronizacijo naprave",
|
||||||
"Description[sv]": "Anpassa enhetssynkronisering",
|
"Description[sv]": "Anpassa enhetssynkronisering",
|
||||||
"Description[ta]": "சாதன ஒத்திசைவு அமைப்புகள்",
|
"Description[ta]": "சாதன ஒத்திசைவு அமைப்புகள்",
|
||||||
|
@ -106,7 +104,6 @@
|
||||||
"X-KDE-Keywords[nl]": "netwerk,kde verbinden,telefoon,sync,mobiel,android,ios,bestanden verzenden,bestanden delen,bestanden overdragen,bestanden ontvangen,apparaten,apparaat,synchronisatie,oproepen,telefoon,smartphone,contactpersonen,sms,telefoonmeldingen,volumebesturing,systeemvolume,ringtone,geluid afspelen,presentatie,foto maken,gedeeld klembord,connectiviteitsmonitor,invoer op afstand,muis op afstand,toetsenbord op afstand,mpris,telefoonintegratie,commando's,apparaat vergrendelen,multimediabesturing,sftp,delen",
|
"X-KDE-Keywords[nl]": "netwerk,kde verbinden,telefoon,sync,mobiel,android,ios,bestanden verzenden,bestanden delen,bestanden overdragen,bestanden ontvangen,apparaten,apparaat,synchronisatie,oproepen,telefoon,smartphone,contactpersonen,sms,telefoonmeldingen,volumebesturing,systeemvolume,ringtone,geluid afspelen,presentatie,foto maken,gedeeld klembord,connectiviteitsmonitor,invoer op afstand,muis op afstand,toetsenbord op afstand,mpris,telefoonintegratie,commando's,apparaat vergrendelen,multimediabesturing,sftp,delen",
|
||||||
"X-KDE-Keywords[nn]": "nettverk,kde connect,kopla til,tilkopling,telefon,synkroniser,mobil,android,ios,send filer,overfør filer,ta imot filer,einingar,eining,synkronisering,samtale,samtalar,samtaler,anrop,oppringing,ringje,smarttelefon,kontaktar,adressebok,sms,varslingar,lydstyrke,systemlydstyrke,ringjetone,spel lyd,presentasjon,ta bilete,ta foto,delt utklippstavle,del utklippstavle,sambandsovervaking,tilkoplingsovervaking,fjerntastatur,fjernstyring,fjernmus,mpris,telefonintegrasjon,kommandoar,lås eining,multimediakontroll,sftp,bla gjennom telefon,del,deling",
|
"X-KDE-Keywords[nn]": "nettverk,kde connect,kopla til,tilkopling,telefon,synkroniser,mobil,android,ios,send filer,overfør filer,ta imot filer,einingar,eining,synkronisering,samtale,samtalar,samtaler,anrop,oppringing,ringje,smarttelefon,kontaktar,adressebok,sms,varslingar,lydstyrke,systemlydstyrke,ringjetone,spel lyd,presentasjon,ta bilete,ta foto,delt utklippstavle,del utklippstavle,sambandsovervaking,tilkoplingsovervaking,fjerntastatur,fjernstyring,fjernmus,mpris,telefonintegrasjon,kommandoar,lås eining,multimediakontroll,sftp,bla gjennom telefon,del,deling",
|
||||||
"X-KDE-Keywords[pl]": "sieć,kde connect,podłącz,telefon,synchronizacja,komórka,android,ios,wyślij pliki,udostępnij pliki,prześlij pliki,pobierz pliki,urządzenia,urządzenie,synchronizacja,rozmowy,telefon,smartfon,kontakty,sms,powiadomienia na telefonie,sterowanie głośnością,głośność systemowa,dzwonek,odtwórz dźwięk,prezentacja,zrób zdjęcie,zrób zdjęcie,współdzielony schowek,monitor łączności,zdalna obsługa,zdalna mysz,zdalna klawiatura,mpris,integracja z telefonem,polecenia,zblokuj urządzenie,sterowani multimediami,sftp,przeglądanie telefonu,udostępnij",
|
"X-KDE-Keywords[pl]": "sieć,kde connect,podłącz,telefon,synchronizacja,komórka,android,ios,wyślij pliki,udostępnij pliki,prześlij pliki,pobierz pliki,urządzenia,urządzenie,synchronizacja,rozmowy,telefon,smartfon,kontakty,sms,powiadomienia na telefonie,sterowanie głośnością,głośność systemowa,dzwonek,odtwórz dźwięk,prezentacja,zrób zdjęcie,zrób zdjęcie,współdzielony schowek,monitor łączności,zdalna obsługa,zdalna mysz,zdalna klawiatura,mpris,integracja z telefonem,polecenia,zblokuj urządzenie,sterowani multimediami,sftp,przeglądanie telefonu,udostępnij",
|
||||||
"X-KDE-Keywords[pt_BR]": "rede, kde connect, conectar, telefone, sincronizar, celular, android, ios, enviar arquivos, compartilhar arquivos, transferir arquivos, receber arquivos, dispositivos, dispositivo, sincronização, chamadas, telefone, smartphone, contatos, sms, notificações do telefone, controlar volume, volume do sistema, toque, reproduzir som, apresentação, tirar foto, tirar foto, área de transferência compartilhada, monitor de conectividade, entrada remota, mouse remoto, teclado remoto, mpris, integração do telefone, comandos, bloquear dispositivo, controle multimídia, sftp, navegar no telefone, compartilhar",
|
|
||||||
"X-KDE-Keywords[ru]": "network,kde connect,connect,phone,sync,mobile,android,ios,send files,share files,transfer files,receive files,devices,device,synchronization,calls,telephone,smartphone,contacts,sms,phone notifications,control volume,system volume,ringtone,play sound,presentation,take picture,take photo,shared clipboard,conectivity monitor,remote input,remote mouse,remote keyboard,mpris,phone integration,commands,lock device,multimedia control,sftp,browse phone,share,подключиться,телефон,синхронизировать,мобильный,андроид,отправить файлы,поделиться файлами,передать файлы,получить файлы,устройства,устройство,синхронизация,звонки,вызовы,смартфон,контакты,смс,уведомления на телефоне,управлять громкостью,системная громкость,рингтон,воспроизвести звук,презентация,сделать снимок,общий буфер обмена,мониторинг подключения,удалённый ввод,удалённая мышь,удалённая клавиатура,интеграция с телефоном,команды,заблокировать устройство,управление мультимедиа,общий доступ,опубликовать",
|
"X-KDE-Keywords[ru]": "network,kde connect,connect,phone,sync,mobile,android,ios,send files,share files,transfer files,receive files,devices,device,synchronization,calls,telephone,smartphone,contacts,sms,phone notifications,control volume,system volume,ringtone,play sound,presentation,take picture,take photo,shared clipboard,conectivity monitor,remote input,remote mouse,remote keyboard,mpris,phone integration,commands,lock device,multimedia control,sftp,browse phone,share,подключиться,телефон,синхронизировать,мобильный,андроид,отправить файлы,поделиться файлами,передать файлы,получить файлы,устройства,устройство,синхронизация,звонки,вызовы,смартфон,контакты,смс,уведомления на телефоне,управлять громкостью,системная громкость,рингтон,воспроизвести звук,презентация,сделать снимок,общий буфер обмена,мониторинг подключения,удалённый ввод,удалённая мышь,удалённая клавиатура,интеграция с телефоном,команды,заблокировать устройство,управление мультимедиа,общий доступ,опубликовать",
|
||||||
"X-KDE-Keywords[sl]": "omrežje,kde connect,povezava,telefon,sinhronizacija,mobilnik,android,ios,pošiljanje datotek,souporaba datotek,prenos datotek,prejemanje datotek,naprave,naprava,sinhronizacija,klici,telefon,pametni telefon,stiki,sms,telefonska obvestila,nadzor glasnosti,glasnost sistema,melodija zvonjenja,predvajanje zvoka,predstavitev,slikanje,fotografiranje,skupno odložišče,nadzor povezljivosti, oddaljeni vnos,oddaljena miška,oddaljena tipkovnica,mpris,integracija telefona, ukazi,zaklepanje naprave,večpredstavnostni nadzor,sftp, brskanje po telefonu,skupni disk",
|
"X-KDE-Keywords[sl]": "omrežje,kde connect,povezava,telefon,sinhronizacija,mobilnik,android,ios,pošiljanje datotek,souporaba datotek,prenos datotek,prejemanje datotek,naprave,naprava,sinhronizacija,klici,telefon,pametni telefon,stiki,sms,telefonska obvestila,nadzor glasnosti,glasnost sistema,melodija zvonjenja,predvajanje zvoka,predstavitev,slikanje,fotografiranje,skupno odložišče,nadzor povezljivosti, oddaljeni vnos,oddaljena miška,oddaljena tipkovnica,mpris,integracija telefona, ukazi,zaklepanje naprave,večpredstavnostni nadzor,sftp, brskanje po telefonu,skupni disk",
|
||||||
"X-KDE-Keywords[sv]": "nätverk,kde anslut,anslut,telefon,synkronisera,mobil,android,ios,skicka filer,dela filer,överför filer,ta emot filer,apparater,apparat,synkronisering,samtal,telefon,smart telefon,kontakter,sms,telefonunderrättelser,kontrollera volym,systemvolym,rington,spela ljud,presentation,ta bild,ta foto,delat klippbord,anslutningsövervakare,fjärrinmatning,fjärrmus,fjärrtangentbord,mpris,telefonintegrering,kommandon,lås apparat,multimediastyrning,sftp,bläddra på telefon,dela",
|
"X-KDE-Keywords[sv]": "nätverk,kde anslut,anslut,telefon,synkronisera,mobil,android,ios,skicka filer,dela filer,överför filer,ta emot filer,apparater,apparat,synkronisering,samtal,telefon,smart telefon,kontakter,sms,telefonunderrättelser,kontrollera volym,systemvolym,rington,spela ljud,presentation,ta bild,ta foto,delat klippbord,anslutningsövervakare,fjärrinmatning,fjärrmus,fjärrtangentbord,mpris,telefonintegrering,kommandon,lås apparat,multimediastyrning,sftp,bläddra på telefon,dela",
|
||||||
|
|
|
@ -74,8 +74,6 @@
|
||||||
"Description[nn]": "Handsam tilkopla einingar",
|
"Description[nn]": "Handsam tilkopla einingar",
|
||||||
"Description[pa]": "ਕਨੈਕਟ ਹੋਏ ਡਿਵਾਈਸਾਂ ਦਾ ਇੰਤਜ਼ਾਮ",
|
"Description[pa]": "ਕਨੈਕਟ ਹੋਏ ਡਿਵਾਈਸਾਂ ਦਾ ਇੰਤਜ਼ਾਮ",
|
||||||
"Description[pl]": "Zarządzaj podłączonymi urządzeniami",
|
"Description[pl]": "Zarządzaj podłączonymi urządzeniami",
|
||||||
"Description[pt_BR]": "Gerenciar dispositivos conectados",
|
|
||||||
"Description[ru]": "Управление подключёнными устройствами",
|
|
||||||
"Description[sl]": "Upravljaj povezane naprave",
|
"Description[sl]": "Upravljaj povezane naprave",
|
||||||
"Description[sv]": "Hantera anslutna apparater",
|
"Description[sv]": "Hantera anslutna apparater",
|
||||||
"Description[ta]": "இணைந்துள்ள சாதனங்களை நிர்வகிக்க விடும்",
|
"Description[ta]": "இணைந்துள்ள சாதனங்களை நிர்வகிக்க விடும்",
|
||||||
|
|
|
@ -46,13 +46,33 @@ void VirtualMonitorPlugin::stop()
|
||||||
m_process = nullptr;
|
m_process = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool krdpHasVirtualMonitor()
|
||||||
|
{
|
||||||
|
static std::optional<bool> hasIt;
|
||||||
|
if (!hasIt.has_value()) {
|
||||||
|
QProcess p;
|
||||||
|
p.start(QS("krdpserver"), {QS("--help")});
|
||||||
|
if (!p.waitForStarted()) {
|
||||||
|
*hasIt = false;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!p.waitForFinished(1000)) {
|
||||||
|
*hasIt = false;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
hasIt = p.readAllStandardOutput().contains("--virtual-monitor");
|
||||||
|
}
|
||||||
|
return *hasIt;
|
||||||
|
}
|
||||||
|
|
||||||
void VirtualMonitorPlugin::connected()
|
void VirtualMonitorPlugin::connected()
|
||||||
{
|
{
|
||||||
// Get local capabilities
|
// Get local capabilities
|
||||||
// We test again, since the user may have installed the necessary packages in the meantime
|
// We test again, since the user may have installed the necessary packages in the meantime
|
||||||
m_capabilitiesLocal.vncClient = checkVncClient();
|
m_capabilitiesLocal.vncClient = checkVncClient();
|
||||||
m_capabilitiesLocal.virtualMonitor = !QStandardPaths::findExecutable(QS("krfb-virtualmonitor")).isEmpty();
|
m_capabilitiesLocal.rdpClient = checkRdpClient();
|
||||||
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Local device supports VNC:" << m_capabilitiesLocal.vncClient;
|
m_capabilitiesLocal.virtualMonitor = !QStandardPaths::findExecutable(QS("krfb-virtualmonitor")).isEmpty() || krdpHasVirtualMonitor();
|
||||||
|
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Local device supports VNC:" << m_capabilitiesLocal.vncClient << "RDP: " << m_capabilitiesLocal.rdpClient;
|
||||||
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Local device supports Virtual Monitor:" << m_capabilitiesLocal.virtualMonitor;
|
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Local device supports Virtual Monitor:" << m_capabilitiesLocal.virtualMonitor;
|
||||||
|
|
||||||
auto screen = QGuiApplication::primaryScreen();
|
auto screen = QGuiApplication::primaryScreen();
|
||||||
|
@ -66,6 +86,7 @@ void VirtualMonitorPlugin::connected()
|
||||||
{QS("scale"), screen->devicePixelRatio()},
|
{QS("scale"), screen->devicePixelRatio()},
|
||||||
}}},
|
}}},
|
||||||
{QS("supports_vnc"), m_capabilitiesLocal.vncClient},
|
{QS("supports_vnc"), m_capabilitiesLocal.vncClient},
|
||||||
|
{QS("supports_rdp"), m_capabilitiesLocal.rdpClient},
|
||||||
{QS("supports_virt_mon"), m_capabilitiesLocal.virtualMonitor},
|
{QS("supports_virt_mon"), m_capabilitiesLocal.virtualMonitor},
|
||||||
});
|
});
|
||||||
sendPacket(np);
|
sendPacket(np);
|
||||||
|
@ -88,7 +109,11 @@ void VirtualMonitorPlugin::receivePacket(const NetworkPacket &received)
|
||||||
}
|
}
|
||||||
|
|
||||||
QUrl url;
|
QUrl url;
|
||||||
url.setScheme(received.get<QString>(QS("protocol"), QS("vnc")));
|
if (m_capabilitiesRemote.rdpClient) {
|
||||||
|
url.setScheme(received.get<QString>(QS("protocol"), QS("rdp")));
|
||||||
|
} else {
|
||||||
|
url.setScheme(received.get<QString>(QS("protocol"), QS("vnc")));
|
||||||
|
}
|
||||||
url.setUserName(received.get<QString>(QS("username"), QS("user")));
|
url.setUserName(received.get<QString>(QS("username"), QS("user")));
|
||||||
url.setPassword(received.get<QString>(QS("password")));
|
url.setPassword(received.get<QString>(QS("password")));
|
||||||
url.setPort(received.get<int>(QS("port"), DEFAULT_PORT));
|
url.setPort(received.get<int>(QS("port"), DEFAULT_PORT));
|
||||||
|
@ -111,6 +136,7 @@ void VirtualMonitorPlugin::receivePacket(const NetworkPacket &received)
|
||||||
|
|
||||||
// Get device's capabilities
|
// Get device's capabilities
|
||||||
m_capabilitiesRemote.vncClient = received.get<bool>(QS("supports_vnc"), false);
|
m_capabilitiesRemote.vncClient = received.get<bool>(QS("supports_vnc"), false);
|
||||||
|
m_capabilitiesRemote.rdpClient = received.get<bool>(QS("supports_rdp"), false);
|
||||||
m_capabilitiesRemote.virtualMonitor = received.get<bool>(QS("supports_virt_mon"), false);
|
m_capabilitiesRemote.virtualMonitor = received.get<bool>(QS("supports_virt_mon"), false);
|
||||||
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Remote device supports VNC:" << m_capabilitiesRemote.vncClient;
|
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Remote device supports VNC:" << m_capabilitiesRemote.vncClient;
|
||||||
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Remote device supports Virtual Monitor:" << m_capabilitiesRemote.virtualMonitor;
|
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Remote device supports Virtual Monitor:" << m_capabilitiesRemote.virtualMonitor;
|
||||||
|
@ -131,9 +157,19 @@ bool VirtualMonitorPlugin::requestVirtualMonitor()
|
||||||
}
|
}
|
||||||
|
|
||||||
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Requesting virtual display " << device()->name();
|
qCDebug(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Requesting virtual display " << device()->name();
|
||||||
|
bool ret = false;
|
||||||
|
if (m_capabilitiesRemote.rdpClient && krdpHasVirtualMonitor()) {
|
||||||
|
ret = requestRdp();
|
||||||
|
} else {
|
||||||
|
ret = requestVnc();
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint VirtualMonitorPlugin::s_port = DEFAULT_PORT;
|
||||||
|
bool VirtualMonitorPlugin::requestVnc()
|
||||||
|
{
|
||||||
QUuid uuid = QUuid::createUuid();
|
QUuid uuid = QUuid::createUuid();
|
||||||
static int s_port = DEFAULT_PORT;
|
|
||||||
const QString port = QString::number(s_port++);
|
const QString port = QString::number(s_port++);
|
||||||
|
|
||||||
m_process = new QProcess(this);
|
m_process = new QProcess(this);
|
||||||
|
@ -154,7 +190,7 @@ bool VirtualMonitorPlugin::requestVirtualMonitor()
|
||||||
|
|
||||||
if (m_retries < 5 && (exitCode == 1 || exitStatus == QProcess::CrashExit)) {
|
if (m_retries < 5 && (exitCode == 1 || exitStatus == QProcess::CrashExit)) {
|
||||||
m_retries++;
|
m_retries++;
|
||||||
requestVirtualMonitor();
|
requestVnc();
|
||||||
} else {
|
} else {
|
||||||
m_process->deleteLater();
|
m_process->deleteLater();
|
||||||
m_process = nullptr;
|
m_process = nullptr;
|
||||||
|
@ -177,6 +213,55 @@ bool VirtualMonitorPlugin::requestVirtualMonitor()
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool VirtualMonitorPlugin::requestRdp()
|
||||||
|
{
|
||||||
|
QUuid uuid = QUuid::createUuid();
|
||||||
|
const QString port = QString::number(s_port++);
|
||||||
|
|
||||||
|
m_process = new QProcess(this);
|
||||||
|
m_process->setProgram(QS("krdpserver"));
|
||||||
|
const QString scale = m_remoteResolution.value(QLatin1String("scale")).toString();
|
||||||
|
QStringList args = {QS("--virtual-monitor"),
|
||||||
|
m_remoteResolution.value(QLatin1String("resolution")).toString() + u'@' + scale,
|
||||||
|
QS("--username"),
|
||||||
|
QS("user"),
|
||||||
|
QS("--password"),
|
||||||
|
uuid.toString(),
|
||||||
|
QS("--port"),
|
||||||
|
port};
|
||||||
|
|
||||||
|
static const bool s_plasma = qgetenv("XDG_CURRENT_DESKTOP").compare("KDE", Qt::CaseInsensitive) == 0;
|
||||||
|
if (s_plasma) {
|
||||||
|
args << QS("--plasma");
|
||||||
|
}
|
||||||
|
m_process->setArguments(args);
|
||||||
|
connect(m_process, &QProcess::finished, this, [this](int exitCode, QProcess::ExitStatus exitStatus) {
|
||||||
|
qCWarning(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "krdp virtual display finished with" << device()->name() << m_process->readAllStandardError();
|
||||||
|
if (m_retries < 5 && (exitCode == 1 || exitStatus == QProcess::CrashExit)) {
|
||||||
|
m_retries++;
|
||||||
|
requestVnc();
|
||||||
|
} else {
|
||||||
|
m_process->deleteLater();
|
||||||
|
m_process = nullptr;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
m_process->start();
|
||||||
|
|
||||||
|
if (!m_process->waitForStarted()) {
|
||||||
|
qCWarning(KDECONNECT_PLUGIN_VIRTUALMONITOR) << "Failed to start krfb-virtualmonitor" << m_process->error() << m_process->errorString();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkPacket np(PACKET_TYPE_VIRTUALMONITOR_REQUEST);
|
||||||
|
np.set(QS("protocol"), QS("rdp"));
|
||||||
|
np.set(QS("username"), QS("user"));
|
||||||
|
np.set(QS("password"), uuid.toString());
|
||||||
|
np.set(QS("port"), port);
|
||||||
|
sendPacket(np);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
bool VirtualMonitorPlugin::checkVncClient() const
|
bool VirtualMonitorPlugin::checkVncClient() const
|
||||||
{
|
{
|
||||||
#if defined(Q_OS_MAC)
|
#if defined(Q_OS_MAC)
|
||||||
|
@ -192,6 +277,16 @@ bool VirtualMonitorPlugin::checkVncClient() const
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool VirtualMonitorPlugin::checkRdpClient() const
|
||||||
|
{
|
||||||
|
// krdc is default on KDE
|
||||||
|
if (!QStandardPaths::findExecutable(QS("krdc")).isEmpty())
|
||||||
|
return true;
|
||||||
|
|
||||||
|
// Check if another client is available
|
||||||
|
return checkDefaultSchemeHandler(QS("rdp"));
|
||||||
|
}
|
||||||
|
|
||||||
bool VirtualMonitorPlugin::checkDefaultSchemeHandler(const QString &scheme) const
|
bool VirtualMonitorPlugin::checkDefaultSchemeHandler(const QString &scheme) const
|
||||||
{
|
{
|
||||||
// TODO: macOS built-in tool: defaults read com.apple.LaunchServices/com.apple.launchservices.secure
|
// TODO: macOS built-in tool: defaults read com.apple.LaunchServices/com.apple.launchservices.secure
|
||||||
|
|
|
@ -48,11 +48,15 @@ public:
|
||||||
private:
|
private:
|
||||||
void stop();
|
void stop();
|
||||||
bool checkVncClient() const;
|
bool checkVncClient() const;
|
||||||
|
bool checkRdpClient() const;
|
||||||
bool checkDefaultSchemeHandler(const QString &scheme) const;
|
bool checkDefaultSchemeHandler(const QString &scheme) const;
|
||||||
|
bool requestVnc();
|
||||||
|
bool requestRdp();
|
||||||
|
|
||||||
struct Capabilities {
|
struct Capabilities {
|
||||||
bool virtualMonitor = false;
|
bool virtualMonitor = false;
|
||||||
bool vncClient = false;
|
bool vncClient = false;
|
||||||
|
bool rdpClient = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
Capabilities m_capabilitiesLocal;
|
Capabilities m_capabilitiesLocal;
|
||||||
|
@ -61,4 +65,6 @@ private:
|
||||||
QProcess *m_process = nullptr;
|
QProcess *m_process = nullptr;
|
||||||
QJsonObject m_remoteResolution;
|
QJsonObject m_remoteResolution;
|
||||||
uint m_retries = 0;
|
uint m_retries = 0;
|
||||||
|
|
||||||
|
static uint s_port;
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
#
|
#
|
||||||
# André Marcelo Alvarenga <alvarenga@kde.org>, 2020.
|
# André Marcelo Alvarenga <alvarenga@kde.org>, 2020.
|
||||||
# Luiz Fernando Ranghetti <elchevive@opensuse.org>, 2021, 2023.
|
# Luiz Fernando Ranghetti <elchevive@opensuse.org>, 2021, 2023.
|
||||||
# SPDX-FileCopyrightText: 2023, 2024 Geraldo Simiao <geraldosimiao@fedoraproject.org>
|
# Geraldo Simiao <geraldosimiao@fedoraproject.org>, 2023.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: kdeconnect-kde\n"
|
"Project-Id-Version: kdeconnect-kde\n"
|
||||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||||
"POT-Creation-Date: 2024-10-12 00:38+0000\n"
|
"POT-Creation-Date: 2024-10-12 00:38+0000\n"
|
||||||
"PO-Revision-Date: 2024-11-25 01:22-0300\n"
|
"PO-Revision-Date: 2023-08-11 00:52-0300\n"
|
||||||
"Last-Translator: Geraldo Simiao <geraldosimiao@fedoraproject.org>\n"
|
"Last-Translator: Geraldo Simiao <geraldosimiao@fedoraproject.org>\n"
|
||||||
"Language-Team: Brazilian Portuguese <kde-i18n-pt_BR@kde.org>\n"
|
"Language-Team: Brazilian Portuguese <kde-i18n-pt_BR@kde.org>\n"
|
||||||
"Language: pt_BR\n"
|
"Language: pt_BR\n"
|
||||||
|
@ -18,17 +18,17 @@ msgstr ""
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"X-Generator: Lokalize 24.08.3\n"
|
"X-Generator: Lokalize 23.04.3\n"
|
||||||
|
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgctxt "NAME OF TRANSLATORS"
|
msgctxt "NAME OF TRANSLATORS"
|
||||||
msgid "Your names"
|
msgid "Your names"
|
||||||
msgstr "André Marcelo Alvarenga, Geraldo Simião"
|
msgstr "André Marcelo Alvarenga"
|
||||||
|
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgctxt "EMAIL OF TRANSLATORS"
|
msgctxt "EMAIL OF TRANSLATORS"
|
||||||
msgid "Your emails"
|
msgid "Your emails"
|
||||||
msgstr "alvarenga@kde.org, geraldosimiao@fedoraproject.org"
|
msgstr "alvarenga@kde.org"
|
||||||
|
|
||||||
#: deviceindicator.cpp:53
|
#: deviceindicator.cpp:53
|
||||||
#, kde-format
|
#, kde-format
|
||||||
|
@ -47,9 +47,10 @@ msgid "Ring device"
|
||||||
msgstr "Fazer o dispositivo tocar"
|
msgstr "Fazer o dispositivo tocar"
|
||||||
|
|
||||||
#: deviceindicator.cpp:95
|
#: deviceindicator.cpp:95
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "Send a file/URL"
|
||||||
msgid "Send files"
|
msgid "Send files"
|
||||||
msgstr "Enviar arquivos"
|
msgstr "Enviar um arquivo/URL"
|
||||||
|
|
||||||
#: deviceindicator.cpp:117
|
#: deviceindicator.cpp:117
|
||||||
#, kde-format
|
#, kde-format
|
||||||
|
|
|
@ -10,7 +10,7 @@ msgstr ""
|
||||||
"Project-Id-Version: kdeconnect-kcm\n"
|
"Project-Id-Version: kdeconnect-kcm\n"
|
||||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||||
"POT-Creation-Date: 2024-10-19 00:39+0000\n"
|
"POT-Creation-Date: 2024-10-19 00:39+0000\n"
|
||||||
"PO-Revision-Date: 2024-11-25 01:24-0300\n"
|
"PO-Revision-Date: 2024-07-19 18:23-0300\n"
|
||||||
"Last-Translator: Geraldo Simiao <geraldosimiao@fedoraproject.org>\n"
|
"Last-Translator: Geraldo Simiao <geraldosimiao@fedoraproject.org>\n"
|
||||||
"Language-Team: Brazilian Portuguese <kde-i18n-pt_BR@kde.org>\n"
|
"Language-Team: Brazilian Portuguese <kde-i18n-pt_BR@kde.org>\n"
|
||||||
"Language: pt_BR\n"
|
"Language: pt_BR\n"
|
||||||
|
@ -18,7 +18,7 @@ msgstr ""
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"X-Generator: Lokalize 24.08.3\n"
|
"X-Generator: Lokalize 24.05.2\n"
|
||||||
|
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgctxt "NAME OF TRANSLATORS"
|
msgctxt "NAME OF TRANSLATORS"
|
||||||
|
@ -31,9 +31,10 @@ msgid "Your emails"
|
||||||
msgstr "alvarenga@kde.org, geraldosimiao@fedoraproject.org"
|
msgstr "alvarenga@kde.org, geraldosimiao@fedoraproject.org"
|
||||||
|
|
||||||
#: kcm.cpp:88
|
#: kcm.cpp:88
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "KDE Connect Settings"
|
||||||
msgid "Error: KDE Connect is not running"
|
msgid "Error: KDE Connect is not running"
|
||||||
msgstr "Erro: O KDE Connect não está sendo executado"
|
msgstr "Configurações do KDE Connect"
|
||||||
|
|
||||||
#: kcm.cpp:204
|
#: kcm.cpp:204
|
||||||
#, kde-format
|
#, kde-format
|
||||||
|
@ -110,7 +111,7 @@ msgstr "(Status)"
|
||||||
#: kcm.ui:238
|
#: kcm.ui:238
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgid "KSqueezedTextLabel"
|
msgid "KSqueezedTextLabel"
|
||||||
msgstr "KSqueezedTextLabel"
|
msgstr ""
|
||||||
|
|
||||||
#. i18n: ectx: property (text), widget (QPushButton, cancel_button)
|
#. i18n: ectx: property (text), widget (QPushButton, cancel_button)
|
||||||
#: kcm.ui:269
|
#: kcm.ui:269
|
||||||
|
@ -182,22 +183,24 @@ msgstr ""
|
||||||
#: list.qml:52
|
#: list.qml:52
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgid "Remembered"
|
msgid "Remembered"
|
||||||
msgstr "Salvo"
|
msgstr ""
|
||||||
|
|
||||||
#: list.qml:54
|
#: list.qml:54
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "Available plugins"
|
||||||
msgid "Available"
|
msgid "Available"
|
||||||
msgstr "Disponível"
|
msgstr "Plugins disponíveis"
|
||||||
|
|
||||||
#: list.qml:56
|
#: list.qml:56
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "KDE Connect"
|
||||||
msgid "Connected"
|
msgid "Connected"
|
||||||
msgstr "Conectado"
|
msgstr "KDE Connect"
|
||||||
|
|
||||||
#: list.qml:61
|
#: list.qml:61
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgid "No devices found"
|
msgid "No devices found"
|
||||||
msgstr "Nenhum dispositivo encontrado"
|
msgstr ""
|
||||||
|
|
||||||
#~ msgid "🔑 abababab"
|
#~ msgid "🔑 abababab"
|
||||||
#~ msgstr "🔑 abababab"
|
#~ msgstr "🔑 abababab"
|
||||||
|
|
|
@ -4,13 +4,12 @@
|
||||||
# SPDX-FileCopyrightText: 2020, 2024 Alexander Yavorsky <kekcuha@gmail.com>
|
# SPDX-FileCopyrightText: 2020, 2024 Alexander Yavorsky <kekcuha@gmail.com>
|
||||||
# Дронова Юлия <juliette.tux@gmail.com>, 2021.
|
# Дронова Юлия <juliette.tux@gmail.com>, 2021.
|
||||||
# Olesya Gerasimenko <translation-team@basealt.ru>, 2023.
|
# Olesya Gerasimenko <translation-team@basealt.ru>, 2023.
|
||||||
# Alexander Yavorsky <kekcuha@gmail.com>, 2024.
|
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: kdeconnect-kde\n"
|
"Project-Id-Version: kdeconnect-kde\n"
|
||||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||||
"POT-Creation-Date: 2024-10-12 00:38+0000\n"
|
"POT-Creation-Date: 2024-10-12 00:38+0000\n"
|
||||||
"PO-Revision-Date: 2024-11-17 17:42+0300\n"
|
"PO-Revision-Date: 2024-01-10 21:59+0300\n"
|
||||||
"Last-Translator: Alexander Yavorsky <kekcuha@gmail.com>\n"
|
"Last-Translator: Alexander Yavorsky <kekcuha@gmail.com>\n"
|
||||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||||
"Language: ru\n"
|
"Language: ru\n"
|
||||||
|
@ -19,7 +18,7 @@ msgstr ""
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n"
|
||||||
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||||
"X-Generator: Lokalize 21.08.3\n"
|
"X-Generator: Lokalize 23.08.4\n"
|
||||||
|
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgctxt "NAME OF TRANSLATORS"
|
msgctxt "NAME OF TRANSLATORS"
|
||||||
|
@ -48,9 +47,10 @@ msgid "Ring device"
|
||||||
msgstr "Позвонить на устройство"
|
msgstr "Позвонить на устройство"
|
||||||
|
|
||||||
#: deviceindicator.cpp:95
|
#: deviceindicator.cpp:95
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "Send a file/URL"
|
||||||
msgid "Send files"
|
msgid "Send files"
|
||||||
msgstr "Передать файлы"
|
msgstr "Передать файл/URL"
|
||||||
|
|
||||||
#: deviceindicator.cpp:117
|
#: deviceindicator.cpp:117
|
||||||
#, kde-format
|
#, kde-format
|
||||||
|
|
|
@ -9,7 +9,7 @@ msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
"Report-Msgid-Bugs-To: https://bugs.kde.org\n"
|
||||||
"POT-Creation-Date: 2024-10-19 00:39+0000\n"
|
"POT-Creation-Date: 2024-10-19 00:39+0000\n"
|
||||||
"PO-Revision-Date: 2024-11-17 17:44+0300\n"
|
"PO-Revision-Date: 2024-06-30 17:26+0300\n"
|
||||||
"Last-Translator: Alexander Yavorsky <kekcuha@gmail.com>\n"
|
"Last-Translator: Alexander Yavorsky <kekcuha@gmail.com>\n"
|
||||||
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
"Language-Team: Russian <kde-russian@lists.kde.ru>\n"
|
||||||
"Language: ru\n"
|
"Language: ru\n"
|
||||||
|
@ -33,9 +33,10 @@ msgstr ""
|
||||||
"zawertun@gmail.com"
|
"zawertun@gmail.com"
|
||||||
|
|
||||||
#: kcm.cpp:88
|
#: kcm.cpp:88
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "KDE Connect Settings"
|
||||||
msgid "Error: KDE Connect is not running"
|
msgid "Error: KDE Connect is not running"
|
||||||
msgstr "Ошибка: приложение KDE Connect не запущено"
|
msgstr "Настройка KDE Connect"
|
||||||
|
|
||||||
#: kcm.cpp:204
|
#: kcm.cpp:204
|
||||||
#, kde-format
|
#, kde-format
|
||||||
|
@ -113,7 +114,7 @@ msgstr "(состояние)"
|
||||||
#: kcm.ui:238
|
#: kcm.ui:238
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgid "KSqueezedTextLabel"
|
msgid "KSqueezedTextLabel"
|
||||||
msgstr "KSqueezedTextLabel"
|
msgstr ""
|
||||||
|
|
||||||
#. i18n: ectx: property (text), widget (QPushButton, cancel_button)
|
#. i18n: ectx: property (text), widget (QPushButton, cancel_button)
|
||||||
#: kcm.ui:269
|
#: kcm.ui:269
|
||||||
|
@ -185,22 +186,25 @@ msgstr ""
|
||||||
#: list.qml:52
|
#: list.qml:52
|
||||||
#, kde-format
|
#, kde-format
|
||||||
msgid "Remembered"
|
msgid "Remembered"
|
||||||
msgstr "В списке"
|
msgstr ""
|
||||||
|
|
||||||
#: list.qml:54
|
#: list.qml:54
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "Available plugins"
|
||||||
msgid "Available"
|
msgid "Available"
|
||||||
msgstr "Доступно"
|
msgstr "Доступные модули"
|
||||||
|
|
||||||
#: list.qml:56
|
#: list.qml:56
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "KDE Connect"
|
||||||
msgid "Connected"
|
msgid "Connected"
|
||||||
msgstr "Подключено"
|
msgstr "KDE Connect"
|
||||||
|
|
||||||
#: list.qml:61
|
#: list.qml:61
|
||||||
#, kde-format
|
#, fuzzy, kde-format
|
||||||
|
#| msgid "No device selected."
|
||||||
msgid "No devices found"
|
msgid "No devices found"
|
||||||
msgstr "Не найдено ни одного устройства"
|
msgstr "Устройство не выбрано."
|
||||||
|
|
||||||
#~ msgid "🔑 abababab"
|
#~ msgid "🔑 abababab"
|
||||||
#~ msgstr "🔑 abababab"
|
#~ msgstr "🔑 abababab"
|
||||||
|
|
|
@ -80,7 +80,6 @@ GenericName[nl]=Instellingen voor synchronisatie van apparaat
|
||||||
GenericName[nn]=Innstillingar for einingssynkronisering
|
GenericName[nn]=Innstillingar for einingssynkronisering
|
||||||
GenericName[pa]=ਡਿਵਾਈਸ ਸੈਕਰੋਨਾਈਜ਼ ਸੈਟਿੰਗਾਂ
|
GenericName[pa]=ਡਿਵਾਈਸ ਸੈਕਰੋਨਾਈਜ਼ ਸੈਟਿੰਗਾਂ
|
||||||
GenericName[pl]=Ustawienia synchronizacji urządzenia
|
GenericName[pl]=Ustawienia synchronizacji urządzenia
|
||||||
GenericName[pt_BR]=Configurações da sincronização de dispositivo
|
|
||||||
GenericName[sl]=Nastavitve sinhronizacijenaprav
|
GenericName[sl]=Nastavitve sinhronizacijenaprav
|
||||||
GenericName[sv]=Inställning av enhetssynkronisering
|
GenericName[sv]=Inställning av enhetssynkronisering
|
||||||
GenericName[ta]=சாதன ஒத்திசைவு அமைப்புகள்
|
GenericName[ta]=சாதன ஒத்திசைவு அமைப்புகள்
|
||||||
|
@ -115,7 +114,6 @@ Comment[nl]=Synchronisatie van apparaat configureren
|
||||||
Comment[nn]=Set opp einingssynkronisering
|
Comment[nn]=Set opp einingssynkronisering
|
||||||
Comment[pa]=ਡਿਵਾਈਸ ਸੈਕਰੋਨਾਈਜ਼ੇਸ਼ਨ ਦੀ ਸੰਰਚਨਾ
|
Comment[pa]=ਡਿਵਾਈਸ ਸੈਕਰੋਨਾਈਜ਼ੇਸ਼ਨ ਦੀ ਸੰਰਚਨਾ
|
||||||
Comment[pl]=Ustawienia synchronizacji urządzenia
|
Comment[pl]=Ustawienia synchronizacji urządzenia
|
||||||
Comment[pt_BR]=Configurar sincronização de dispositivo
|
|
||||||
Comment[sl]=Konfiguriraj sinhronizacijo naprav
|
Comment[sl]=Konfiguriraj sinhronizacijo naprav
|
||||||
Comment[sv]=Anpassa enhetssynkronisering
|
Comment[sv]=Anpassa enhetssynkronisering
|
||||||
Comment[ta]=சாதன ஒத்திசைவை அமைக்க விடும்
|
Comment[ta]=சாதன ஒத்திசைவை அமைக்க விடும்
|
||||||
|
|
|
@ -73,7 +73,6 @@ GenericName[nl]=Tekstberichten versturen
|
||||||
GenericName[nn]=Tekstmeldingar
|
GenericName[nn]=Tekstmeldingar
|
||||||
GenericName[pa]=ਟੈਕਸਟ ਸੁਨੇਹੇ
|
GenericName[pa]=ਟੈਕਸਟ ਸੁਨੇਹੇ
|
||||||
GenericName[pl]=Wiadomości tekstowe
|
GenericName[pl]=Wiadomości tekstowe
|
||||||
GenericName[pt_BR]=Mensagem de texto
|
|
||||||
GenericName[sl]=Sporočanje besedil
|
GenericName[sl]=Sporočanje besedil
|
||||||
GenericName[sv]=Textmeddelanden
|
GenericName[sv]=Textmeddelanden
|
||||||
GenericName[ta]=குறுஞ்செய்தி சேவை
|
GenericName[ta]=குறுஞ்செய்தி சேவை
|
||||||
|
@ -108,7 +107,6 @@ Comment[nl]=Lees en verzend SMS berichten op verbonden apparaten
|
||||||
Comment[nn]=Les og send tekstmeldingar på tilkopla einingar
|
Comment[nn]=Les og send tekstmeldingar på tilkopla einingar
|
||||||
Comment[pa]=ਕਨੈਕਟ ਕੀਤੇ ਡਿਵਾਈਸਾਂ ਉੱਤੇ SMS ਸੁਨੇਹਿਆਂ ਨੂੰ ਪੜ੍ਹੋ ਅਤੇ ਭੇਜੋ
|
Comment[pa]=ਕਨੈਕਟ ਕੀਤੇ ਡਿਵਾਈਸਾਂ ਉੱਤੇ SMS ਸੁਨੇਹਿਆਂ ਨੂੰ ਪੜ੍ਹੋ ਅਤੇ ਭੇਜੋ
|
||||||
Comment[pl]=Czytaj i wysyłaj wiadomości SMS na podłączonych urządzeniach
|
Comment[pl]=Czytaj i wysyłaj wiadomości SMS na podłączonych urządzeniach
|
||||||
Comment[pt_BR]=Ler e executar comandos nos dispositivos conectados
|
|
||||||
Comment[sl]=Beri in pošiljaj SMS na povezanih napravah
|
Comment[sl]=Beri in pošiljaj SMS na povezanih napravah
|
||||||
Comment[sv]=Läs och skicka meddelanden via SMS på anslutna apparater
|
Comment[sv]=Läs och skicka meddelanden via SMS på anslutna apparater
|
||||||
Comment[ta]=இணைந்துள்ள சாதனங்களில் குறுஞ்செய்திகளை படிக்கவும் அனுப்பவும் விடும்
|
Comment[ta]=இணைந்துள்ள சாதனங்களில் குறுஞ்செய்திகளை படிக்கவும் அனுப்பவும் விடும்
|
||||||
|
|
Loading…
Reference in a new issue