Merge branch '1.x'

This commit is contained in:
Aleix Pol 2017-09-18 20:02:53 +02:00
commit 956d515fe9
62 changed files with 214 additions and 528 deletions

View file

@ -4,32 +4,30 @@ KDE Connect is a multi-platform app that allows your devices to communicate (eg:
## (Some) Features
- **Shared clipboard**: copy and paste between your phone and your computer (or any other device).
- **Notification sync**: Read your Android notifications from the desktop.
- **Notification sync**: Read and reply to your Android notifications from the desktop.
- **Share files and URLs** instantly from one device to another.
- **Multimedia remote control**: Use your phone as a remote for Linux media players.
- **Virtual touchpad**: Use your phone screen as your computer's touchpad.
- **Virtual touchpad**: Use your phone screen as your computer's touchpad and keyboard.
All this without wires, over the already existing WiFi network, and using a secure, encrypted protocol.
All this without wires, over the already existing WiFi network, and using TLS encryption.
## Supported platforms
- Computers running Plasma 5, KDE4, Unity (Ubuntu), Gnome 3, Elementary OS...
- Computers running Linux with Plasma 5, Gnome 3, Elementary OS...
- Android, by installing the [KDE Connect Android app](https://play.google.com/store/apps/details?id=org.kde.kdeconnect_tp) (also available on [F-Droid](https://f-droid.org/repository/browse/?fdid=org.kde.kdeconnect_tp)).
There is also source code for an unmaintained iOS port, waiting for somebody to give it some love :)
## How to install
This explains how to install KDE Connect on your computer. You will also need to install it in your phone and pair both devices in the app if you want it to be any useful.
### On Linux
Look in your distribution repo for a package called `kdeconnect-kde`, `kdeconnect-plasma`, or just `kdeconnect`. If it's not there and you know how to build software from sources, you just found the repo :)
If you are not using Plasma 5 or KDE4, you will also need to install [indicator-kdeconnect](https://github.com/vikoadi/indicator-kdeconnect) (available as an [Ubuntu PPA](https://code.launchpad.net/~vikoadi/+archive/ubuntu/ppa/)) for integration with other desktops using appindicator.
If you are not using Plasma 5, you might want to install a user interface for your platform. The [indicator-kdeconnect](https://github.com/bajoja/indicator-kdeconnect) project provides an appindicator icon plus integration with Nautilus.
### On Mac or Windows
There is no support for Mac or Windows yet. The last time I checked it was compiling on Windows, so it's only lacking a user interface. Same for Mac. Contributions welcome!
Platforms other than Linux are not officially supported, but it should be possible to run KDE Connect there. You can compile KDE Connect for Windows using [Craft](https://community.kde.org/Craft) and it works except for some plugins. I haven't tried on Mac. Contributions welcome!
### On BSD
It should work, but no promises.
It should work, but no promises :)
## How does it work?
KDE Connect consists of an UI-agnostic "core" library which exposes a series of DBus interfaces, and several UI components that consume these DBus interfaces. This way, new UI components can be added to integrate better with specific platforms or desktops, without having to reimplement the protocol or any of the internals. The core KDE Connect library is also divided in 4 big blocks:
@ -39,7 +37,7 @@ KDE Connect consists of an UI-agnostic "core" library which exposes a series of
- **NetworkPackets**: JSON-serializable and self-contained pieces of information to be sent by the plugins between devices.
- **Plugins**: Independent pieces of code which implement a specific feature. Plugins will use NetworkPackets to exchange information through the network with other Plugins on a remote Device.
The basic structure of a NetworkPacket (before encryption) is the following:
The basic structure of a NetworkPacket is the following:
```
{
@ -57,9 +55,11 @@ NetworkPackets can also have binary data attached that can't be serialized to JS
`"payloadSize"`: The size of the file, or -1 if it is a stream without known size.
`"payloadTransferInfo"`: Another JSON object where the specific Link can add information so the Link in the remote end can establish a connection and receive the payload (eg: IP and port in a local network). It's up to the Link implementation to decide how to use this field.
## Contributing
To contribute patches, use [KDE Connect's Phabricator](https://phabricator.kde.org/project/profile/159/). There you can also find a task list with stuff to do, and links to other relevant resources. It is a good idea to also subscribe to the [KDE Connect mailing list](https://mail.kde.org/mailman/listinfo/kdeconnect).
## License
[GNU GPL v2](https://www.gnu.org/licenses/gpl-2.0.html) and [GNU GPL v3](https://www.gnu.org/licenses/gpl-3.0.html)
If you are reading this from Github, you should know that this is just a mirror of the [KDE Project repo](https://projects.kde.org/projects/extragear/network/kdeconnect-kde/repository/).
[![Build Status](https://build.kde.org/buildStatus/icon?job=kdeconnect-kde master kf5-qt5)](https://build.kde.org/job/kdeconnect-kde%20master%20kf5-qt5/)
If you are reading this from Github, you should know that this is just a mirror of the [KDE Project repo](https://cgit.kde.org/kdeconnect-kde.git).

View file

@ -1,13 +1,10 @@
[Desktop Entry]
Name=KDE Connect Application
Name[ar]=تطبيق كدي المتّصل
Name[ast]=Aplicación KDE Connect
Name[ca]=Aplicació KDE Connect
Name[ca@valencia]=Aplicació KDE Connect
Name[cs]=Aplikace KDE Connect
Name[da]=Programmet KDE Connect
Name[de]=KDE-Connect-Anwendung
Name[el]=Εφαρμογή KDE Connect
Name[en_GB]=KDE Connect Application
Name[es]=Aplicación KDE Connect
Name[et]=KDE Connecti rakendus
@ -15,7 +12,6 @@ Name[eu]=KDE Connect aplikazioa
Name[fi]=KDE Connect -sovellus
Name[fr]=Application KDE Connect
Name[gl]=Aplicativo de KDE Connect
Name[he]=היישום KDE Connect
Name[hu]=KDE Connect alkalmazás
Name[it]=Applicazione KDE Connect
Name[ko]=KDE Connect
@ -37,14 +33,11 @@ Name[x-test]=xxKDE Connect Applicationxx
Name[zh_CN]=KDE Connect
Name[zh_TW]=KDE
GenericName=Device Synchronization
GenericName[ar]=مزامنة الأجهزة
GenericName[ast]=Sincronización de preseos
GenericName[ca]=Sincronització de dispositius
GenericName[ca@valencia]=Sincronització de dispositius
GenericName[cs]=Synchronizace zařízení
GenericName[da]=Enhedssynkronisering
GenericName[de]=Geräteabgleich
GenericName[el]=Συγχρονισμός συσκευών
GenericName[en_GB]=Device Synchronisation
GenericName[es]=Sincronización de dispositivos
GenericName[et]=Seadmete sünkroonimine
@ -52,7 +45,6 @@ GenericName[eu]=Galuak sinkronizatzea
GenericName[fi]=Laitteiden synkronointi
GenericName[fr]=Synchronisation de périphériques
GenericName[gl]=Sincronización de dispositivos
GenericName[he]=סנכרון התקן
GenericName[hu]=Eszközszinkronizáció
GenericName[it]=Sincronizzazione dispositivo
GenericName[ko]=
@ -75,14 +67,11 @@ GenericName[x-test]=xxDevice Synchronizationxx
GenericName[zh_CN]=
GenericName[zh_TW]=
Comment=Make all your devices one
Comment[ar]=اجعل أجهزتك كلّها واحدًا
Comment[ast]=Fai tolos tos preseos ún
Comment[ca]=Fa que tots els vostres dispositius siguin un
Comment[ca@valencia]=Fa que tots els vostres dispositius siguen un
Comment[cs]=Sjednoťte svá zařízení
Comment[da]=Gør alle dine enheder til en
Comment[de]=Gleichen Sie alle Ihre Geräte ab
Comment[el]=Όλες οι συσκευές σας σε μία
Comment[en_GB]=Make all your devices one
Comment[es]=Convertir todos sus dispositivos en uno
Comment[et]=Kõigi seadmete ühendamine
@ -90,7 +79,6 @@ Comment[eu]=Bat egin zure gailu guztiak
Comment[fi]=Yhdistä kaikki laitteesi toisiinsa
Comment[fr]=Unifiez vos périphériques
Comment[gl]=Unifique os seus dispositivos.
Comment[he]=הפוך את כך ההתקנים שלך לאחד
Comment[hu]=Egyesítse eszközeit
Comment[it]=Fai di tutti i tuoi dispositivi un solo dispositivo
Comment[ko]=

View file

@ -36,12 +36,14 @@ DownloadJob::DownloadJob(const QHostAddress& address, const QVariantMap& transfe
, m_address(address)
, m_port(transferInfo[QStringLiteral("port")].toInt())
, m_socket(new QSslSocket)
, m_buffer(new QBuffer)
{
LanLinkProvider::configureSslSocket(m_socket.data(), transferInfo.value(QStringLiteral("deviceId")).toString(), true);
connect(m_socket.data(), SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(socketFailed(QAbstractSocket::SocketError)));
// connect(mSocket.data(), &QAbstractSocket::stateChanged, [](QAbstractSocket::SocketState state){ qDebug() << "statechange" << state; });
connect(m_socket.data(), &QAbstractSocket::connected, this, &DownloadJob::socketConnected);
// emit readChannelFinished when the socket gets disconnected. This seems to be a bug in upstream QSslSocket.
// Needs investigation and upstreaming of the fix. QTBUG-62257
connect(m_socket.data(), &QAbstractSocket::disconnected, m_socket.data(), &QAbstractSocket::readChannelFinished);
}
DownloadJob::~DownloadJob()
@ -54,26 +56,22 @@ void DownloadJob::start()
//TODO: Timeout?
// Cannot use read only, might be due to ssl handshake, getting QIODevice::ReadOnly error and no connection
m_socket->connectToHostEncrypted(m_address.toString(), m_port, QIODevice::ReadWrite);
bool b = m_buffer->open(QBuffer::ReadWrite);
Q_ASSERT(b);
}
void DownloadJob::socketFailed(QAbstractSocket::SocketError error)
{
if (error != QAbstractSocket::RemoteHostClosedError) { //remote host closes when finishes
qWarning(KDECONNECT_CORE) << "error..." << m_socket->errorString();
qWarning() << error << m_socket->errorString();
setError(error + 1);
setErrorText(m_socket->errorString());
} else {
auto ba = m_socket->readAll();
m_buffer->write(ba);
m_buffer->seek(0);
}
emitResult();
}
QSharedPointer<QIODevice> DownloadJob::getPayload()
{
return m_buffer.staticCast<QIODevice>();
return m_socket.staticCast<QIODevice>();
}
void DownloadJob::socketConnected()
{
emitResult();
}

View file

@ -47,11 +47,10 @@ private:
QHostAddress m_address;
qint16 m_port;
QSharedPointer<QSslSocket> m_socket;
QSharedPointer<QBuffer> m_buffer;
private Q_SLOTS:
void socketFailed(QAbstractSocket::SocketError error);
void socketConnected();
};
#endif // UPLOADJOB_H

View file

@ -501,9 +501,8 @@ void LanLinkProvider::addLink(const QString& deviceId, QSslSocket* socket, Netwo
Q_ASSERT(m_pairingHandlers.contains(deviceId));
m_pairingHandlers[deviceId]->setDeviceLink(deviceLink);
}
Q_EMIT onConnectionReceived(*receivedPackage, deviceLink);
}
Q_EMIT onConnectionReceived(*receivedPackage, deviceLink);
}
LanPairingHandler* LanLinkProvider::createPairingHandler(DeviceLink* link)

View file

@ -210,7 +210,11 @@ void Device::addLink(const NetworkPackage& identityPackage, DeviceLink* link)
{
//qCDebug(KDECONNECT_CORE) << "Adding link to" << id() << "via" << link->provider();
Q_ASSERT(!m_deviceLinks.contains(link));
setName(identityPackage.get<QString>(QStringLiteral("deviceName")));
m_deviceType = str2type(identityPackage.get<QString>(QStringLiteral("deviceType")));
if (m_deviceLinks.contains(link))
return;
m_protocolVersion = identityPackage.get<int>(QStringLiteral("protocolVersion"), -1);
if (m_protocolVersion != NetworkPackage::s_protocolVersion) {
@ -222,10 +226,6 @@ void Device::addLink(const NetworkPackage& identityPackage, DeviceLink* link)
m_deviceLinks.append(link);
//re-read the device name from the identityPackage because it could have changed
setName(identityPackage.get<QString>(QStringLiteral("deviceName")));
m_deviceType = str2type(identityPackage.get<QString>(QStringLiteral("deviceType")));
//Theoretically we will never add two links from the same provider (the provider should destroy
//the old one before this is called), so we do not have to worry about destroying old links.
//-- Actually, we should not destroy them or the provider will store an invalid ref!

View file

@ -96,8 +96,8 @@ public:
Q_SCRIPTABLE QString pluginsConfigFile() const;
KdeConnectPlugin* plugin(const QString& pluginName) const;
void setPluginEnabled(const QString& pluginName, bool enabled);
bool isPluginEnabled(const QString& pluginName) const;
Q_SCRIPTABLE void setPluginEnabled(const QString& pluginName, bool enabled);
Q_SCRIPTABLE bool isPluginEnabled(const QString& pluginName) const;
void cleanUnneededLinks();

View file

@ -37,6 +37,7 @@ FileTransferJob::FileTransferJob(const QSharedPointer<QIODevice>& origin, qint64
, m_destination(destination)
, m_speedBytes(0)
, m_written(0)
, m_size(size)
{
Q_ASSERT(m_origin);
Q_ASSERT(m_origin->isReadable());
@ -45,12 +46,8 @@ FileTransferJob::FileTransferJob(const QSharedPointer<QIODevice>& origin, qint64
m_destination.setScheme(QStringLiteral("file"));
}
if (size >= 0) {
setTotalAmount(Bytes, size);
}
setCapabilities(Killable);
qCDebug(KDECONNECT_CORE) << "FileTransferJob Downloading payload to" << destination;
qCDebug(KDECONNECT_CORE) << "FileTransferJob Downloading payload to" << destination << "size:" << size;
}
void FileTransferJob::start()
@ -79,22 +76,30 @@ void FileTransferJob::doStart()
void FileTransferJob::startTransfer()
{
// Don't put each ready read
if (m_reply)
return;
setProcessedAmount(Bytes, 0);
m_timer.start();
description(this, i18n("Receiving file over KDE Connect"),
{ i18nc("File transfer origin", "From"), m_from },
{ i18nc("File transfer destination", "To"), m_destination.toLocalFile() });
QNetworkRequest req(m_destination);
req.setHeader(QNetworkRequest::ContentLengthHeader, totalAmount(Bytes));
if (m_size >= 0) {
setTotalAmount(Bytes, m_size);
req.setHeader(QNetworkRequest::ContentLengthHeader, m_size);
}
m_reply = Daemon::instance()->networkAccessManager()->put(req, m_origin.data());
connect(m_reply, &QNetworkReply::uploadProgress, this, [this](qint64 bytesSent, qint64 /*bytesTotal*/) {
if (!m_timer.isValid())
m_timer.start();
setProcessedAmount(Bytes, bytesSent);
const auto elapsed = m_timer.elapsed();
if (elapsed > 0) {
emitSpeed(bytesSent / elapsed);
emitSpeed((1000 * bytesSent) / elapsed);
}
});
connect(m_reply, static_cast<void (QNetworkReply::*)(QNetworkReply::NetworkError)>(&QNetworkReply::error),

View file

@ -72,6 +72,7 @@ private:
QElapsedTimer m_timer;
qulonglong m_speedBytes;
qint64 m_written;
qint64 m_size;
};
#endif

View file

@ -10,8 +10,6 @@ X-KDE-Kded-load-on-demand=false
X-KDE-Kded-phase=1
Name=KDE Connect
Name[ar]=كدي المتّصل
Name[ast]=KDE Connect
Name[bg]=KDE Connect
Name[bs]=Konekcija KDE
Name[ca]=KDE Connect
@ -19,7 +17,6 @@ Name[ca@valencia]=KDE Connect
Name[cs]=KDE Connect
Name[da]=KDE Connect
Name[de]=KDE-Connect
Name[el]=KDE Connect
Name[en_GB]=KDE Connect
Name[es]=KDE Connect
Name[et]=KDE Connect
@ -27,7 +24,6 @@ Name[eu]=KDE Connect
Name[fi]=KDE Connect
Name[fr]=KDE Connect
Name[gl]=KDE Connect
Name[he]=KDE Connect
Name[hu]=KDE csatlakozás
Name[it]=KDE Connect
Name[ko]=KDE Connect
@ -51,8 +47,6 @@ Name[zh_CN]=KDE Connect
Name[zh_TW]=KDE
Comment=Connect KDE with your smartphone
Comment[ar]=أوصل كدي بهاتفك الذّكيّ
Comment[ast]=Coneuta KDE col to teléfonu intelixente
Comment[bg]=Свържете КДЕ с вашия смартфон
Comment[bs]=Konektujte se na KDE sa Vašim mobitelom
Comment[ca]=Connecta el KDE amb el vostre telèfon intel·ligent
@ -60,7 +54,6 @@ Comment[ca@valencia]=Connecta el KDE amb el vostre telèfon intel·ligent
Comment[cs]=Propojte KDE s vaším telefonem
Comment[da]=Forbind KDE med din smartphone
Comment[de]=KDE mit Ihren Smartphone verbinden
Comment[el]=Σύνδεση του KDE με το έξυπνο τηλέφωνό σας
Comment[en_GB]=Connect KDE with your smartphone
Comment[es]=Conecte KDE con su teléfono móvil
Comment[et]=KDE ühendamine oma nutitelefoniga
@ -68,7 +61,6 @@ Comment[eu]=Konektatu KDE zure mugikorrarekin
Comment[fi]=Yhdistä KDE älypuhelimeesi
Comment[fr]=Connectez KDE avec votre smartphone
Comment[gl]=Conectar KDE co seu teléfono móbil.
Comment[he]=חבר את KDE לפלאפון החכם שלך
Comment[hu]=A KDE csatlakoztatása az okostelefonnal
Comment[it]=Connetti KDE con il tuo smartphone
Comment[ko]=KDE

View file

@ -8,15 +8,12 @@ OnlyShowIn=KDE;GNOME;Unity;XFCE;
NoDisplay=true
Name=KDEConnect daemon
Name[ar]=عفريت KDEConnect
Name[ast]=Degorriu KDEConnect
Name[bg]=Услуга KDE Connect
Name[ca]=Dimoni del KDEConnect
Name[ca@valencia]=Dimoni del KDEConnect
Name[cs]=Démon KDE Connect
Name[da]=KDEConnect-dæmon
Name[de]=KDE-Connect-Dienst
Name[el]=Δαίμονας του KDEConnect
Name[en_GB]=KDEConnect daemon
Name[es]=Demonio de KDE Connect
Name[et]=KDEConnecti deemon
@ -24,7 +21,6 @@ Name[eu]=KDEConnect daimona
Name[fi]=KDEConnect-taustapalvelu
Name[fr]=Démon KDE Connect
Name[gl]=Servizo de KDE Connect
Name[he]=דמון KDEConnect
Name[hu]=KDEConnect szolgáltatás
Name[it]=Demone KDE Connect
Name[ko]=KDE Connect

View file

@ -1,8 +1,6 @@
[Desktop Entry]
Type=Service
Name=Send file via KDE Connect service
Name[ar]=أرسل ملفًّا عبر خدمة «كدي المتّصل»
Name[ast]=Unviar ficheru pel serviciu de KDE Connect
Name[bg]=Изпращане на файл през услугата KDE Connect
Name[bs]=Pošalji datoteku putem KDE Connect servisa
Name[ca]=Envia un fitxer a través del servei KDE Connect
@ -10,7 +8,6 @@ Name[ca@valencia]=Envia un fitxer a través del servei KDE Connect
Name[cs]=Poslat soubor přes službu KDE Connect
Name[da]=Send fil via KDE Connect-tjeneste
Name[de]=Datei mit KDE-Connect -Dienst versenden
Name[el]=Αποστολή αρχείου μέσω της υπηρεσίας KDE Connect
Name[en_GB]=Send file via KDE Connect service
Name[es]=Enviar archivo usando el servicio KDE Connect
Name[et]=Faili saatmine KDE Connecti teenuse kaudu
@ -18,7 +15,6 @@ Name[eu]=Bidali fitxategia KDE Connect zerbitzuaren bidez
Name[fi]=Lähetä tiedosto KDE Connect -palvelulla
Name[fr]=Envoyer un fichier via le service KDE Connect
Name[gl]=Enviar un ficheiro mediante o servizo de KDE Connect
Name[he]=שלח קובץ דרך שירות KDE Connect
Name[hu]=Fájl küldése a KDE csatlakozás szolgáltatáson keresztül
Name[it]=Invia un file tramite il servizio KDE Connect
Name[ko]=KDE Connect
@ -41,8 +37,6 @@ Name[zh_CN]=通过 KDE Connect 服务发送文件
Name[zh_TW]=KDE
X-KDE-Library=kdeconnectfileitemaction
X-KDE-Submenu=Connect
X-KDE-Submenu[ar]=اتّصل,اتصل
X-KDE-Submenu[ast]=Coneutar
X-KDE-Submenu[bg]=Свързване
X-KDE-Submenu[bs]=Uspostavi vezu
X-KDE-Submenu[ca]=Connecta
@ -50,7 +44,6 @@ X-KDE-Submenu[ca@valencia]=Connecta
X-KDE-Submenu[cs]=Připojit
X-KDE-Submenu[da]=Forbind
X-KDE-Submenu[de]=Verbinden
X-KDE-Submenu[el]=Σύνδεση
X-KDE-Submenu[en_GB]=Connect
X-KDE-Submenu[es]=Conectar
X-KDE-Submenu[et]=Ühendus
@ -58,9 +51,7 @@ X-KDE-Submenu[eu]=Konektatu
X-KDE-Submenu[fi]=Yhdistä
X-KDE-Submenu[fr]=Connecter
X-KDE-Submenu[gl]=Conectar
X-KDE-Submenu[he]=חיבור
X-KDE-Submenu[hu]=Csatlakozás
X-KDE-Submenu[ia]=Connecte
X-KDE-Submenu[it]=Connetti
X-KDE-Submenu[ko]=
X-KDE-Submenu[nl]=Verbinden

8
indicator/org.kde.kdeconnect.nonplasma.desktop Executable file → Normal file
View file

@ -8,12 +8,12 @@ Name[de]=KDE-Connect-Anzeige
Name[es]=Indicador de KDE Connect
Name[eu]=KDE Connect adierazlea
Name[fr]=Indicateur de KDE Connect
Name[gl]=Indicador de KDE Connect
Name[it]=Indicatore di KDE Connect
Name[nl]=KDE-Connect indicator
Name[nl]=KDE-Connect-indicator
Name[nn]=KDE Connect-indikator
Name[pl]=Wskaźnik KDE Connect
Name[pt]=Indicador do KDE Connect
Name[sk]=KDE Connect indikátor
Name[sr]=КДЕконекцијин показатељ
Name[sr@ijekavian]=КДЕконекцијин показатељ
Name[sr@ijekavianlatin]=KDEkonekcijin pokazatelj
@ -23,14 +23,11 @@ Name[tr]=KDE Connect Göstergesi
Name[uk]=Індикатор KDE Connect
Name[x-test]=xxKDE Connect Indicatorxx
Comment=Display information about your devices
Comment[ar]=اعرض معلومات عن أجهزتك
Comment[ast]=Amuesa información tocante a los tos preseos
Comment[ca]=Mostra la informació dels vostres dispositius
Comment[ca@valencia]=Mostra la informació dels vostres dispositius
Comment[cs]=Zobrazit informace o vašich zařízeních
Comment[da]=Vis information om dine enheder
Comment[de]=Anzeige von Informationen über Ihre Geräte
Comment[el]=Προβολή πληροφοριών σχετικά με τις συσκευές σας
Comment[en_GB]=Display information about your devices
Comment[es]=Mostrar información sobre sus dispositivos
Comment[et]=Teabe kuvamine seadmete kohta
@ -38,7 +35,6 @@ Comment[eu]=Bistaratu zure gailuei buruzko informazioa
Comment[fi]=Näyttää tietoa laitteistasi
Comment[fr]=Afficher les informations de vos périphériques
Comment[gl]=Mostrar información sobre os dispositivos
Comment[he]=הצג מידע עך ההתקנים שלך
Comment[hu]=Információk megjelenítése az eszközeiről
Comment[it]=Visualizza informazioni sui tuoi dispositivi
Comment[ko]=

View file

@ -325,10 +325,10 @@ void KdeConnectKcm::setCurrentDeviceTrusted(KdeConnectKcm::TrustStatus trusted)
case NotTrusted:
kcmUi->status_label->setText(i18n("(not paired)"));
break;
case Requested:
case RequestedByPeer:
kcmUi->status_label->setText(i18n("(incoming pair request)"));
break;
case RequestedByPeer:
case Requested:
kcmUi->status_label->setText(i18n("(pairing requested)"));
break;
}

View file

@ -11,8 +11,6 @@ X-KDE-ParentApp=kcontrol
X-KDE-System-Settings-Parent-Category=hardware
Name=KDE Connect
Name[ar]=كدي المتّصل
Name[ast]=KDE Connect
Name[bg]=KDE Connect
Name[bs]=Konekcija KDE
Name[ca]=KDE Connect
@ -20,7 +18,6 @@ Name[ca@valencia]=KDE Connect
Name[cs]=KDE Connect
Name[da]=KDE Connect
Name[de]=KDE-Connect
Name[el]=KDE Connect
Name[en_GB]=KDE Connect
Name[es]=KDE Connect
Name[et]=KDE Connect
@ -28,7 +25,6 @@ Name[eu]=KDE Connect
Name[fi]=KDE Connect
Name[fr]=KDE Connect
Name[gl]=KDE Connect
Name[he]=KDE Connect
Name[hu]=KDE csatlakozás
Name[it]=KDE Connect
Name[ko]=KDE Connect
@ -52,14 +48,11 @@ Name[zh_CN]=KDE Connect
Name[zh_TW]=KDE
Comment=Connect and sync your devices
Comment[ar]=اتّصل وزامن أجهزتك
Comment[ast]=Coneuta y sincroniza los tos preseos
Comment[ca]=Connecta i sincronitza els vostres dispositius
Comment[ca@valencia]=Connecta i sincronitza els vostres dispositius
Comment[cs]=Připojte a synchronizujte svá zařízení
Comment[da]=Forbind og synkronisér dine enheder
Comment[de]=Verbinden und Abgleichen Ihrer Geräte
Comment[el]=Σύνδεση και συγχρονισμός των συσκευών σας
Comment[en_GB]=Connect and sync your devices
Comment[es]=Conecte y sincronice sus dispositivos
Comment[et]=Oma seadmete ühendamine ja sünkroonimine
@ -67,7 +60,6 @@ Comment[eu]=Konektatu eta sinkronizatu zure gailuak
Comment[fi]=Yhdistä ja synkronoi laitteitasi
Comment[fr]=Connectez et synchronisez vos périphériques
Comment[gl]=Conecte e sincronice os seus dispositivos.
Comment[he]=חבר וסנכרן את ההתקנים שלך
Comment[hu]=Csatlakoztassa és szinkronizálja eszközeit
Comment[it]=Connetti e sincronizza i tuoi dispositivi
Comment[ko]=
@ -90,8 +82,6 @@ Comment[zh_CN]=连接并同步您的设备
Comment[zh_TW]=
X-KDE-Keywords=Network,Android,Devices
X-KDE-Keywords[ar]=شبكة,أندرويد,اندرويد,جهاز,أجهزة
X-KDE-Keywords[ast]=Rede,Android,Preseos
X-KDE-Keywords[bg]=Мрежа,Андроид,Устройства
X-KDE-Keywords[bs]=Mreža,Android,Uređaji
X-KDE-Keywords[ca]=Xarxa,Android,Dispositius
@ -99,7 +89,6 @@ X-KDE-Keywords[ca@valencia]=Xarxa,Android,Dispositius
X-KDE-Keywords[cs]=Síť,Android,Zařízení
X-KDE-Keywords[da]=Netværk,Android,Enheder
X-KDE-Keywords[de]=Netzwerk,Android,Geräte
X-KDE-Keywords[el]=Δίκτυο,Android,Συσκευές
X-KDE-Keywords[en_GB]=Network,Android,Devices
X-KDE-Keywords[es]=Red,Android,Dispositivos
X-KDE-Keywords[et]=Võrk,Android,Seadmed
@ -107,7 +96,6 @@ X-KDE-Keywords[eu]=Sarea,Android,Gailuak
X-KDE-Keywords[fi]=Verkko,Android,Laitteet
X-KDE-Keywords[fr]=Réseau,Android,Périphériques
X-KDE-Keywords[gl]=rede,Android,dispositivos
X-KDE-Keywords[he]=Network,Android,Devices,רשתות,אנדרואיד,התקנים,מכשירים
X-KDE-Keywords[hu]=Hálózat,Android,Eszközök
X-KDE-Keywords[it]=Rete,Android,Dispositivi
X-KDE-Keywords[ko]=Network,Android,Devices,,,

View file

@ -4,14 +4,11 @@ Icon=kdeconnect
Terminal=false
Exec=kcmshell5 kcm_kdeconnect
Name=KDE Connect Settings
Name[ar]=إعدادات كدي المتّصل
Name[ast]=Axustes de KDE Connect
Name[ca]=Arranjament del KDE Connect
Name[ca@valencia]=Arranjament del KDE Connect
Name[cs]=Nastavení KDE Connect
Name[da]=Indstilling af KDE Connect
Name[de]=KDE-Connect-Einstellungen
Name[el]=Ρυθμίσεις KDE Connect
Name[en_GB]=KDE Connect Settings
Name[es]=Ajustes de KDE Connect
Name[et]=KDE Connecti seadistused
@ -19,7 +16,6 @@ Name[eu]=KDE Connect ezarpenak
Name[fi]=KDE Connectin asetukset
Name[fr]=Paramètres de KDE Connect
Name[gl]=Configuración de KDE Connect
Name[he]=הגדרות KDE Connect
Name[hu]=A KDE Connect beállításai
Name[it]=Impostazioni di KDE Connect
Name[ko]=KDE Connect
@ -41,14 +37,11 @@ Name[x-test]=xxKDE Connect Settingsxx
Name[zh_CN]=KDE Connect
Name[zh_TW]=KDE
GenericName=Connect and sync your devices
GenericName[ar]=اتّصل وزامن أجهزتك
GenericName[ast]=Coneuta y sincroniza los tos preseos
GenericName[ca]=Connecta i sincronitza els vostres dispositius
GenericName[ca@valencia]=Connecta i sincronitza els vostres dispositius
GenericName[cs]=Připojte a synchronizujte svá zařízení
GenericName[da]=Forbind og synkronisér dine enheder
GenericName[de]=Verbinden und Abgleichen Ihrer Geräte
GenericName[el]=Σύνδεση και συγχρονισμός των συσκευών σας
GenericName[en_GB]=Connect and sync your devices
GenericName[es]=Conecte y sincronice sus dispositivos
GenericName[et]=Oma seadmete ühendamine ja sünkroonimine
@ -56,7 +49,6 @@ GenericName[eu]=Konektatu eta sinkronizatu zure gailuak
GenericName[fi]=Yhdistä ja synkronoi laitteitasi
GenericName[fr]=Connectez et synchronisez vos périphériques
GenericName[gl]=Conecte e sincronice os seus dispositivos
GenericName[he]=Connect and sync your devices
GenericName[hu]=Csatlakoztassa és szinkronizálja eszközeit
GenericName[it]=Connetti e sincronizza i tuoi dispositivi
GenericName[ko]=

View file

@ -4,14 +4,11 @@
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-2.0+</project_license>
<name>KDE Connect</name>
<name xml:lang="ar">كدي المتّصل</name>
<name xml:lang="ast">KDE Connect</name>
<name xml:lang="ca">KDE Connect</name>
<name xml:lang="ca-valencia">KDE Connect</name>
<name xml:lang="cs">KDE Connect</name>
<name xml:lang="da">KDE Connect</name>
<name xml:lang="de">KDE-Connect</name>
<name xml:lang="el">KDE Connect</name>
<name xml:lang="en-GB">KDE Connect</name>
<name xml:lang="es">KDE Connect</name>
<name xml:lang="et">KDE Connect</name>
@ -19,7 +16,6 @@
<name xml:lang="fi">KDE Connect</name>
<name xml:lang="fr">KDE Connect</name>
<name xml:lang="gl">KDE Connect</name>
<name xml:lang="he">KDE Connect</name>
<name xml:lang="it">KDE Connect</name>
<name xml:lang="ko">KDE Connect</name>
<name xml:lang="nl">KDE Connect</name>
@ -34,20 +30,16 @@
<name xml:lang="sr-ijekavian">КДЕ‑конекција</name>
<name xml:lang="sr-ijekavianlatin">KDEkonekcija</name>
<name xml:lang="sv">KDE-anslut</name>
<name xml:lang="tr">KDE Connect</name>
<name xml:lang="uk">KDE Connect</name>
<name xml:lang="x-test">xxKDE Connectxx</name>
<name xml:lang="zh-CN">KDE Connect</name>
<name xml:lang="zh-TW">KDE Connect</name>
<summary>Seamless connection of your devices</summary>
<summary xml:lang="ar">اتّصال سلس بين أجهزتك</summary>
<summary xml:lang="ast">Conexón ensin torgues de los tos preseos</summary>
<summary xml:lang="ca">Connexió transparent amb els vostres dispositius</summary>
<summary xml:lang="ca-valencia">Connexió transparent amb els vostres dispositius</summary>
<summary xml:lang="cs">Snadné propojení vašich zařízení</summary>
<summary xml:lang="da">Umærkbar forbindelse mellem dine enheder</summary>
<summary xml:lang="da">Supernem forbindelse mellem dine enheder</summary>
<summary xml:lang="de">Nahtlose Verbindung zu Ihren Geräten</summary>
<summary xml:lang="el">Απρόσκοπτη σύνδεση των συσκευών σας</summary>
<summary xml:lang="en-GB">Seamless connection of your devices</summary>
<summary xml:lang="es">Conexión sin interrupciones de sus dispositivos</summary>
<summary xml:lang="et">Sujuv ühendus oma seadmetega</summary>
@ -55,7 +47,6 @@
<summary xml:lang="fi">Saumaton yhteys laitteisiisi</summary>
<summary xml:lang="fr">Connecter vos périphériques avec facilité</summary>
<summary xml:lang="gl">Conexión constante entre dispositivos</summary>
<summary xml:lang="he">חיבור מהיר בין ההתקנים שלך</summary>
<summary xml:lang="it">Connessione trasparente dei tuoi dispositivi</summary>
<summary xml:lang="ko">장치와 항상 연결하기</summary>
<summary xml:lang="nl">Naadloze verbinding met uw apparaten</summary>
@ -70,7 +61,6 @@
<summary xml:lang="sr-ijekavian">Једноставно повезивање ваших уређаја</summary>
<summary xml:lang="sr-ijekavianlatin">Jednostavno povezivanje vaših uređaja</summary>
<summary xml:lang="sv">Sömlös anslutning av dina apparater</summary>
<summary xml:lang="tr">Aygıtlarınızı sorunsuz bağlayın</summary>
<summary xml:lang="uk">Безшовне з’єднання для усіх ваших пристроїв</summary>
<summary xml:lang="x-test">xxSeamless connection of your devicesxx</summary>
<summary xml:lang="zh-CN">无缝连接您的设备</summary>
@ -86,23 +76,20 @@
<p xml:lang="ca-valencia">El KDE Connect proporciona diverses característiques per integrar el telèfon amb l'ordinador: Recordeu que haureu d'instal·lar el KDE Connect a l'ordinador per a que esta aplicació funcione, i mantindre actualitzada la versió de l'escriptori amb la versió d'Android per a que funcionen les últimes característiques.</p>
<p xml:lang="cs">KDE Connect poskytuje několik vlastností pro vzájemnou integraci vašeho telefonu a počítače: Prosím pamatujte, že pro správnou funkci této aplikace potřebujete nainstalovat KDE Connect na váš počítač a pro správnou funkci nejnovějších vlastností udržovat aplikaci na telefonu i počítači aktuální.</p>
<p xml:lang="da">KDE Connect tilbyder adskillige funktioner, der integrerer din telefon og din computer: Bemærk at du vil skulle installere KDE Connect på din computer for at denne app virker, samt holde desktop-versionen opdateret sammen med Android-versionen, for at de nyeste funktioner vil virke.</p>
<p xml:lang="en-GB">KDE Connect provides several features to integrate your phone and your computer: Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.</p>
<p xml:lang="es">KDE Connect proporciona varias funcionalidades para integrar su teléfono y su equipo: Por favor, tenga en cuenta que deberá instalar KDE Connect en su equipo para que esta aplicación funcione. Además, deberá mantener la versión de escritorio actualizada con su versión de Android para beneficiarse de las últimas funcionalidades.</p>
<p xml:lang="eu">KDE Connect-ek eginbide ugari ditu zure telefonoa eta ordenagailua integratzeko: KDE Connect instalatu beharko duzu zure ordenagailuan aplikazioa hau ibili dadin, eta mahaigaineko bertsioa Androiden bertsioarekin eguneratuta izan beharko duzu eginbide berrienak ibili daitezen.</p>
<p xml:lang="fr">KDE Connect fournit un ensemble de fonctionnalités pour intégrer votre téléphone et votre ordinateur : veuillez noter qu'il est nécessaire d'installer KDE Connect sur votre ordinateur pour faire fonctionner cette application, ainsi que de maintenir le logiciel à jour pour profiter des dernières fonctionnalités.</p>
<p xml:lang="gl">KDE Connect fornece varias funcionalidades para integrar teléfonos con computadores. Teña en conta que terá que instalar KDE Connect no seu computador para que este aplicativo funcione, e manter a versión de escritorio sincronizada coa de Android para que as últimas funcionalidades funcionen.</p>
<p xml:lang="it">KDE Connect fornisce diverse funzioni per integrare il tuo telefono e il tuo computer: affinché questa applicazione funzioni, dovrai installare KDE Connect sul tuo computer e mantenere la versione desktop aggiornata alla versione Android, in modo che le funzioni più recenti siano attive.</p>
<p xml:lang="nl">KDE Connect biedt verschillende functies om uw telefoon en uw computer: merk op dat het nodig is om KDE Connect op uw computer te installeren om deze app te laten werken en de bureabladversie up-to-date te houden met de Android-versie om de laatste functies te laten werken.</p>
<p xml:lang="nn">KDE Connect har fleire funksjonar for integrering av telefonen og datamaskina di. Merk at du må installera KDE Connect på datamaskina for at denne appen skal fungera. Viss du vil bruka dei nyaste funksjonane, må du òg hugsa på å halda datamaskinversjonen oppdatert når du oppdaterer appen.</p>
<p xml:lang="pl">KDE Connect zapewnia kilka możliwości integracji twojego telefonu z twoim komputerem: Musisz mieć wgrane KDE Connect na swoim komputerze, aby ta aplikacja zadziałała, a także aktualną wersję zgodną z wersją Androida, aby wszystkie najnowsze funkcje działały.</p>
<p xml:lang="pt">O KDE Connect oferece diversas funcionalidades para integrar o seu telefone com o seu computador: Lembre-se por favor que terá de instalar o KDE Connect com o seu computador para esta aplicação funcionar e deverá manter a versão no ambiente de trabalho actualizada com a versão para Android, para que as últimas funcionalidades funcionem.</p>
<p xml:lang="ru">KDE Connect предоставляет несколько функций для интеграции телефона и компьютера. Обратите внимание, что для работы этого приложения необходимо установить KDE Connect на свой компьютер и, для работы новейших функций, держать версию обновлённой в соответствии с версией для Android.</p>
<p xml:lang="sk">KDE Connect poskytuje niekoľko funkcií na integráciu vášho mobilu s vašim počítačom: Pamätajte, že budete potrebovať nainštalovať KDE Connect na váš počítač, aby tento program fungoval a udržiavať verziu desktopu aktuálnu s verziou Androidu, aby fungovali najnovšie funkcie.</p>
<p xml:lang="sr">КДЕ‑конекција поседује вишеструке могућности интеграције вашег телефона и рачунара. Морате да инсталирате КДЕ‑конекцију на ваш рачунар да би ова апликација радила. Такође, нека вам обе апликације буду ажурне како бисте уживали у најновијим могућностима.</p>
<p xml:lang="sr-Latn">KDEkonekcija poseduje višestruke mogućnosti integracije vašeg telefona i računara. Morate da instalirate KDEkonekciju na vaš računar da bi ova aplikacija radila. Takođe, neka vam obe aplikacije budu ažurne kako biste uživali u najnovijim mogućnostima.</p>
<p xml:lang="sr-ijekavian">КДЕ‑конекција поседује вишеструке могућности интеграције вашег телефона и рачунара. Морате да инсталирате КДЕ‑конекцију на ваш рачунар да би ова апликација радила. Такође, нека вам обе апликације буду ажурне како бисте уживали у најновијим могућностима.</p>
<p xml:lang="sr-ijekavianlatin">KDEkonekcija poseduje višestruke mogućnosti integracije vašeg telefona i računara. Morate da instalirate KDEkonekciju na vaš računar da bi ova aplikacija radila. Takođe, neka vam obe aplikacije budu ažurne kako biste uživali u najnovijim mogućnostima.</p>
<p xml:lang="sv">KDE-anslut tillhandahåller flera funktioner för att integrera telefon och dator. Observera att KDE-anslut måste installeras på datorn för att appen ska fungera, och att skrivbordsdatorns version måste hållas uppdaterad tillsammans med Androidversionen för att de senaste funktionerna ska fungera.</p>
<p xml:lang="tr">KDE Connect, telefonunuzu ve bilgisayarınızı bütünleştirmek için çeşitli özellikler sunar: Bu uygulamanın çalışabilmesi için bilgisayarınıza KDE Connect'i yüklemeniz ve en son özelliklerin çalışabilmesi için masaüstü sürümünün Android sürümü ile güncel tutulması gereklidir.</p>
<p xml:lang="uk">У KDE Connect передбачено декілька можливостей для інтеграції вашого телефону з вашим комп’ютером. Будь ласка, зауважте, що вам доведеться встановити KDE Connect на ваш комп’ютер, щоб скористатися цією програмою, а також підтримувати актуальність версії на комп’ютері та версії для Android, щоб мати змогу скористатися найсвіжішими можливостями.</p>
<p xml:lang="x-test">xxKDE Connect provides several features to integrate your phone and your computer: Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.xx</p>
</description>

View file

@ -1,7 +1,5 @@
[Desktop Entry]
Name=KDE Connect
Name[ar]=كدي المتّصل
Name[ast]=KDE Connect
Name[bg]=KDE Connect
Name[bs]=Konekcija KDE
Name[ca]=KDE Connect
@ -9,7 +7,6 @@ Name[ca@valencia]=KDE Connect
Name[cs]=KDE Connect
Name[da]=KDE Connect
Name[de]=KDE-Connect
Name[el]=KDE Connect
Name[en_GB]=KDE Connect
Name[es]=KDE Connect
Name[et]=KDE Connect
@ -17,7 +14,6 @@ Name[eu]=KDE Connect
Name[fi]=KDE Connect
Name[fr]=KDE Connect
Name[gl]=KDE Connect
Name[he]=KDE Connect
Name[hu]=KDE csatlakozás
Name[it]=KDE Connect
Name[ko]=KDE Connect
@ -40,8 +36,6 @@ Name[x-test]=xxKDE Connectxx
Name[zh_CN]=KDE Connect
Name[zh_TW]=KDE
Comment=Show notifications from your devices using KDE Connect
Comment[ar]=أظهر الإخطارات من أجهزتك باستخدام «كدي المتّصل»
Comment[ast]=Amuesa avisos de los tos preseos qu'usen KDE Connect
Comment[bg]=Показване на уведомления от вашите устройства чрез KDE Connect
Comment[bs]=Prikaži obavlještenja sa uređaja koji koriste KDE konekciju
Comment[ca]=Mostra les notificacions dels vostres dispositius emprant el KDE Connect
@ -49,7 +43,6 @@ Comment[ca@valencia]=Mostra les notificacions dels vostres dispositius emprant e
Comment[cs]=Zobrazit upozornění z vašich zařízení pomocí KDE Connect
Comment[da]=Vis bekendtgørelser fra dine enheder med KDE Connect
Comment[de]=Zeigt Benachrichtigungen von Ihren Geräten mit KDE-Connect
Comment[el]=Προβολή ειδοποιήσεων από τις συσκευές σας με το KDE Connect
Comment[en_GB]=Show notifications from your devices using KDE Connect
Comment[es]=Mostrar notificaciones de sus dispositivos usando KDE Connect
Comment[et]=Seadmete märguannete näitamine KDE Connecti vahendusel
@ -57,7 +50,6 @@ Comment[eu]=Ikusi zure gailuetako jakinarazpenak KDE Connect erabiliz
Comment[fi]=Näytä laitteidesi ilmoitukset KDE Connectilla
Comment[fr]=Afficher les notifications provenant de vos périphériques à l'aide de KDE Connect
Comment[gl]=Mostrar notificacións de dispositivos usando KDE Connect.
Comment[he]=הראה התראות מההתקן שלך באמצעות KDE Connect
Comment[hu]=Az eszközökről származó értesítések megjelenítése a KDE csatlakozás használatával
Comment[it]=Mostra le notifiche dei tuoi dispositivi tramite KDE Connect
Comment[ko]=KDE Connect

View file

@ -8,7 +8,6 @@ add_subdirectory(telephony)
add_subdirectory(share)
add_subdirectory(notifications)
add_subdirectory(battery)
add_subdirectory(remotecommands)
add_subdirectory(findmyphone)
add_subdirectory(remotekeyboard)
if(WIN32)
@ -23,6 +22,7 @@ else()
add_subdirectory(sftp)
endif()
if(EXPERIMENTALAPP_ENABLED)
add_subdirectory(remotecommands)
add_subdirectory(mprisremote)
add_subdirectory(remotecontrol)
add_subdirectory(lockdevice)

View file

@ -13,13 +13,11 @@
}
],
"Description": "Show your phone battery next to your computer battery",
"Description[ar]": "أظهر بطّاريّة الهاتف بجانب بطّاريّة الحاسوب",
"Description[ca@valencia]": "Mostra la bateria del telèfon al costat de la bateria de l'ordinador",
"Description[ca]": "Mostra la bateria del telèfon al costat de la bateria de l'ordinador",
"Description[cs]": "Zobrazit baterii vedle baterie počítače",
"Description[da]": "Vis din telefons batteri ved siden af dit computerbatteri",
"Description[da]": "Vis dit telefonbatteri ved siden af dit computerbatteri",
"Description[de]": "Zeigt den Akku Ihres Telefons neben dem Akku des Rechners",
"Description[el]": "Εμφάνιση μπαταρίας συσκευής δίπλα στη μπαταρία του υπολογιστή",
"Description[es]": "Mostrar la batería del teléfono junto a la batería del equipo",
"Description[et]": "Telefoniaku näitamine otse arvutiaku kõrval",
"Description[eu]": "Erakutsi telefonoaren bateria ordenagailuaren bateriaren ondoan",
@ -51,13 +49,11 @@
"Id": "kdeconnect_battery",
"License": "GPL",
"Name": "Battery monitor",
"Name[ar]": "مرقاب البطّاريّة",
"Name[ca@valencia]": "Monitor de la bateria",
"Name[ca]": "Monitor de la bateria",
"Name[cs]": "Monitor baterie",
"Name[da]": "Batteriovervågning",
"Name[de]": "Akkuüberwachung",
"Name[el]": "Παρακολούθηση μπαταρίας",
"Name[es]": "Monitor de batería",
"Name[et]": "Aku jälgija",
"Name[eu]": "Bateriaren monitorea",
@ -65,7 +61,6 @@
"Name[fr]": "Moniteur de batterie",
"Name[gl]": "Vixilante da batería",
"Name[hu]": "Akkumulátorfigyelő",
"Name[ia]": "Controlator de batteria",
"Name[it]": "Monitor della batteria",
"Name[ko]": "배터리 모니터",
"Name[nl]": "Batterijmonitor",

View file

@ -13,13 +13,11 @@
}
],
"Description": "Share the clipboard between devices",
"Description[ar]": "شارك الحافظة بين الجهازين",
"Description[ca@valencia]": "Comparteix el porta-retalls entre dispositius",
"Description[ca]": "Comparteix el porta-retalls entre dispositius",
"Description[cs]": "Sdílet obsah schránky mezi zařízeními",
"Description[da]": "Del udklipsholderen mellem enheder",
"Description[de]": "Die Zwischenablage mit Geräten teilen",
"Description[el]": "Διαμοιρασμός του προχείρου μεταξύ συσκευών",
"Description[es]": "Compartir portapapeles entre dispositivos",
"Description[et]": "Lõikepuhvri jagamine seadmete vahel",
"Description[eu]": "Partekatu arbela gailuen artean",
@ -51,13 +49,11 @@
"Id": "kdeconnect_clipboard",
"License": "GPL",
"Name": "Clipboard",
"Name[ar]": "الحافظة",
"Name[ca@valencia]": "Porta-retalls",
"Name[ca]": "Porta-retalls",
"Name[cs]": "Schránka",
"Name[da]": "Udklipsholder",
"Name[de]": "Zwischenablage",
"Name[el]": "Πρόχειρο",
"Name[es]": "Portapapeles",
"Name[et]": "Lõikepuhver",
"Name[eu]": "Arbela",
@ -65,7 +61,6 @@
"Name[fr]": "Presse-papiers",
"Name[gl]": "Portapapeis",
"Name[hu]": "Vágólap",
"Name[ia]": "Area de transferentia",
"Name[it]": "Appunti",
"Name[ko]": "클립보드",
"Name[nl]": "Klembord",

View file

@ -21,19 +21,16 @@
}
],
"Description": "Find your lost phone by making it play an alarm sound",
"Description[ar]": "جِد هاتفك الضّائع بتشغيل صوت المنبّه",
"Description[ca@valencia]": "Troba el vostre telèfon perdut fent que reproduïsca un so d'alarma",
"Description[ca]": "Troba el vostre telèfon perdut fent que reprodueixi un so d'alarma",
"Description[cs]": "Najděte svůj telefon tím, že jej necháte přehrát zvuk upomínky",
"Description[da]": "Find din forsvundne telefon ved at få den til at afspille en alarm",
"Description[de]": "Finden Sie Ihr verlegtes Telefon, indem Sie mit ihm eine Warnton abspielen",
"Description[el]": "Βρείτε το χαμένο σας τηλέφωνο με ηχητική ειδοποίηση",
"Description[es]": "Encuentre su teléfono perdido haciéndole reproducir un sonido de alarma",
"Description[et]": "Kaotsi läinud telefoni leidmine sellel häireheli esitamisega",
"Description[eu]": "Aurkitu galdutako telefonoa alarma-soinu bat jo araziz",
"Description[fi]": "Löydä hukkaamasi puhelin laittamalla se soittamaan hälytysääntä",
"Description[fr]": "Trouver votre téléphone perdu en déclenchant une alarme",
"Description[gl]": "Reproducir un son de alarma nun teléfono móbil perdido para atopalo.",
"Description[it]": "Trova il tuo telefono smarrito facendogli suonare un allarme sonoro",
"Description[ko]": "알람 소리를 울려서 잃어버린 휴대폰 찾기",
"Description[nl]": "Zoek uw verloren telefoon door het een wekkersignaal te laten spelen",
@ -59,19 +56,16 @@
"Id": "kdeconnect_findmyphone",
"License": "GPL",
"Name": "Ring my phone",
"Name[ar]": "رنّ هاتفي",
"Name[ca@valencia]": "Fes sonar el meu telèfon",
"Name[ca]": "Fes sonar el meu telèfon",
"Name[cs]": "Prozvonit můj telefon",
"Name[da]": "Ring min telefon op",
"Name[de]": "Mein Telefon anklingeln",
"Name[el]": "Κουδούνισμα του τηλεφώνου μου",
"Name[es]": "Hacer sonar mi teléfono",
"Name[et]": "Helista minu telefonile",
"Name[eu]": "Jo nire telefonoaren dei-doinua",
"Name[fi]": "Soita puhelimeeni",
"Name[fr]": "Faire sonner mon téléphone",
"Name[gl]": "Facer soar o meu móbil",
"Name[it]": "Fai squillare il mio telefono",
"Name[ko]": "내 휴대폰 울리기",
"Name[nl]": "Bel mijn telefoon",

View file

@ -1,8 +1,6 @@
[Global]
IconName=kdeconnect
Name=KDE Connect
Name[ar]=كدي المتّصل
Name[ast]=KDE Connect
Name[bg]=KDE Connect
Name[bs]=Konekcija KDE
Name[ca]=KDE Connect
@ -10,7 +8,6 @@ Name[ca@valencia]=KDE Connect
Name[cs]=KDE Connect
Name[da]=KDE Connect
Name[de]=KDE-Connect
Name[el]=KDE Connect
Name[en_GB]=KDE Connect
Name[es]=KDE Connect
Name[et]=KDE Connect
@ -18,7 +15,6 @@ Name[eu]=KDE Connect
Name[fi]=KDE Connect
Name[fr]=KDE Connect
Name[gl]=KDE Connect
Name[he]=KDE Connect
Name[hu]=KDE csatlakozás
Name[it]=KDE Connect
Name[ko]=KDE Connect
@ -41,8 +37,6 @@ Name[x-test]=xxKDE Connectxx
Name[zh_CN]=KDE Connect
Name[zh_TW]=KDE 連線
Comment=Notifications from your devices
Comment[ar]=الإخطارات من أجهزتك
Comment[ast]=Avisos de los tos preseos
Comment[bg]=Уведомления от устройствата ви
Comment[bs]=Notifikacija sa Vašeg uređaja
Comment[ca]=Notificacions dels vostres dispositius
@ -50,7 +44,6 @@ Comment[ca@valencia]=Notificacions dels vostres dispositius
Comment[cs]=Oznamování z vašich zařízení
Comment[da]=Bekendtgørelser fra dine enheder
Comment[de]=Benachrichtigungen von Ihren Geräten
Comment[el]=Ειδοποιήσεις από τις συσκευές σας
Comment[en_GB]=Notifications from your devices
Comment[es]=Notificaciones de sus dispositivos
Comment[et]=Seadmete märguanded
@ -58,7 +51,6 @@ Comment[eu]=Zure gailuetako jakinarazpenak
Comment[fi]=Laitteesi ilmoitukset
Comment[fr]=Notifications provenant de vos périphériques
Comment[gl]=Notificacións de dispositivos.
Comment[he]=התראות מההתקן שלך
Comment[hu]=Az eszközökről származó értesítések
Comment[it]=Notifiche dai tuoi dispositivi
Comment[ko]=장치에 표시된 알림
@ -83,8 +75,6 @@ Comment[zh_TW]=從您的裝置接收到通知
[Event/pairingRequest]
Name=Pairing Request
Name[ar]=طلب اقتران
Name[ast]=Solicitú d'empareyamientu
Name[bg]=Заявка за сдвояване
Name[bs]=Zahtjev za uparivanje
Name[ca]=Sol·licitud d'aparellament
@ -92,7 +82,6 @@ Name[ca@valencia]=Sol·licitud d'aparellament
Name[cs]=Požadavek na párování
Name[da]=Parringsanmodning
Name[de]=Verbindungsanfrage
Name[el]=Αίτημα σύζευξης
Name[en_GB]=Pairing Request
Name[es]=Petición de vinculación
Name[et]=Paardumissoov
@ -100,7 +89,6 @@ Name[eu]=Parekatzeko eskaria
Name[fi]=Paripyyntö
Name[fr]=Demande d'association
Name[gl]=Solicitude de emparellamento
Name[he]=בקשת התאמה
Name[hu]=Párosítási kérés
Name[it]=Richiesta di associazione
Name[ko]=연결 요청
@ -122,25 +110,20 @@ Name[x-test]=xxPairing Requestxx
Name[zh_CN]=配对请求
Name[zh_TW]=配對請求
Comment=Pairing request received from a device
Comment[ar]=استُلم طلب اقتران من جهاز
Comment[ast]=Recibióse una solicitú d'empareyamientu d'un preséu
Comment[ca]=Les sol·licituds d'aparellament rebudes des d'un dispositiu
Comment[ca@valencia]=Les sol·licituds d'aparellament rebudes des d'un dispositiu
Comment[cs]=Požadavek na párování přijat ze zařízení
Comment[da]=Parringsanmodning modtaget fra en enhed
Comment[de]=Verbindungsanfrage von einem Gerät erhalten
Comment[el]=Λήφθηκε αίτημα σύζευξης από μια συσκευή
Comment[en_GB]=Pairing request received from a device
Comment[es]=Petición de vinculación recibida desde un dispositivo
Comment[et]=Seadmelt saadi paardumissoov
Comment[eu]=Parekatzeko eskaria jaso da gailu batetik
Comment[fi]=Saatiin paripyyntö laitteelta
Comment[fr]=Demande d'association provenant d'un périphérique
Comment[gl]=Recibiuse unha solicitude de emparellamento dun dispositivo.
Comment[he]=התקבלה בקשת התאמה מהתקן
Comment[it]=Richiesta di associazione ricevuta da un dispositivo
Comment[ko]=장치에서 연결 요청을 받음
Comment[nl]=Verzoek om een paar te maken ontvangen van apparaten
Comment[nl]=Verzoek om een paar te maken ontvangen van een apparaat
Comment[nn]=Fekk parringsførespurnad frå eining
Comment[pl]=Otrzymano żądanie parowania z urządzenia
Comment[pt]=Pedido de emparelhamento recebido de um dispositivo
@ -161,15 +144,12 @@ Action=Popup
[Event/callReceived]
Name=Incoming Call
Name[ar]=مكالمة واردة
Name[ast]=Llamada entrante
Name[bg]=Входящо обаждане
Name[ca]=Trucada entrant
Name[ca@valencia]=Trucada entrant
Name[cs]=Příchozí hovor
Name[da]=Indkommende opkald
Name[de]=Eingehender Anruf
Name[el]=Εισερχόμενη κλήση
Name[en_GB]=Incoming Call
Name[es]=Llamada entrante
Name[et]=Sisenev kõne
@ -177,9 +157,7 @@ Name[eu]=Sarrerako deia
Name[fi]=Saapuva puhelu
Name[fr]=Appel entrant
Name[gl]=Chamada entrante
Name[he]=שיחה נכנסת
Name[hu]=Bejövő hívás
Name[ia]=Appello in arrivata
Name[it]=Chiamata in ingresso
Name[ko]=수신 전화
Name[nl]=Inkomende oproep
@ -200,8 +178,6 @@ Name[x-test]=xxIncoming Callxx
Name[zh_CN]=收到呼叫
Name[zh_TW]=電話來電
Comment=Someone is calling you
Comment[ar]=ثمّة من يتّصل بك
Comment[ast]=Daquién ta llamándote
Comment[bg]=Някой ви се обажда
Comment[bs]=Neko Vas zove
Comment[ca]=Algú us està trucant
@ -209,7 +185,6 @@ Comment[ca@valencia]=Algú vos està trucant
Comment[cs]=Někdo vám volá
Comment[da]=Nogen ringer til dig
Comment[de]=Sie werden angerufen
Comment[el]=Κάποιος σας καλεί
Comment[en_GB]=Someone is calling you
Comment[es]=Alguien le está llamando
Comment[et]=Keegi helistab sulle
@ -217,7 +192,6 @@ Comment[eu]=Norbait deitzen ari zaizu
Comment[fi]=Sinulle soitetaan
Comment[fr]=Quelqu'un vous appelle
Comment[gl]=Está a recibir unha chamada de alguén.
Comment[he]=מישהו מתקשר אילך
Comment[hu]=Valaki hívja önt
Comment[it]=Chiamata in arrivo
Comment[ko]=누군가가 전화를 걸었음
@ -243,15 +217,12 @@ Action=Popup
[Event/missedCall]
Name=Missed Call
Name[ar]=مكالمة فائتة
Name[ast]=Llamada perdida
Name[bg]=Пропуснато обаждане
Name[ca]=Trucada perduda
Name[ca@valencia]=Trucada perduda
Name[cs]=Zmeškaný hovor
Name[da]=Ubesvaret opkald
Name[de]=Verpasster Anruf
Name[el]=Αναπάντητη κλήση
Name[en_GB]=Missed Call
Name[es]=Llamada perdida
Name[et]=Vastamata kõne
@ -259,7 +230,6 @@ Name[eu]=Galdutako deia
Name[fi]=Vastaamaton puhelu
Name[fr]=Appel manqué
Name[gl]=Chamada perdida
Name[he]=שיחה שלא נענתה
Name[hu]=Nem fogadott hívás
Name[it]=Chiamate perse
Name[ko]=부재 중 전화
@ -281,8 +251,6 @@ Name[x-test]=xxMissed Callxx
Name[zh_CN]=未接来电
Name[zh_TW]=未接來電
Comment=You have a missed call
Comment[ar]=لقد فاتتك مكالمة
Comment[ast]=Tienes una llamada perdida
Comment[bg]=Имате неприето обаждане
Comment[bs]=Imate propušten poziv
Comment[ca]=Teniu una trucada perduda
@ -290,7 +258,6 @@ Comment[ca@valencia]=Teniu una trucada perduda
Comment[cs]=Máte zmeškaný hovor
Comment[da]=Du har et ubesvaret opkald
Comment[de]=Sie haben einen Anruf verpasst
Comment[el]=Έχετε μια αναπάντητη κλήση
Comment[en_GB]=You have a missed call
Comment[es]=Tiene una llamada perdida
Comment[et]=Kõnele jäi vastamata
@ -298,7 +265,6 @@ Comment[eu]=Galdutako dei bat duzu
Comment[fi]=Sinulla on vastaamaton puhelu
Comment[fr]=Vous avez un appel manqué
Comment[gl]=Ten unha chamada perdida.
Comment[he]=יש לך שיחה שלא נענטה
Comment[hu]=Nem fogadott hívása van
Comment[it]=Hai una chiamata persa
Comment[ko]=부재 중 전화가 있음
@ -324,15 +290,12 @@ Action=Popup
[Event/smsReceived]
Name=SMS Received
Name[ar]=استُلمت رسالة
Name[ast]=SMS recibíu
Name[bg]=Получен SMS
Name[ca]=S'ha rebut un SMS
Name[ca@valencia]=S'ha rebut un SMS
Name[cs]=SMS přijata
Name[da]=SMS-modtaget
Name[de]=SMS empfangen
Name[el]=Λήφθηκε SMS
Name[en_GB]=SMS Received
Name[es]=SMS recibido
Name[et]=SMS-i saamine
@ -340,7 +303,6 @@ Name[eu]=SMS bat jaso da
Name[fi]=Saatiin tekstiviesti
Name[fr]=SMS reçu
Name[gl]=Recibiuse un SMS
Name[he]=התקבלה הודעת SMS
Name[hu]=SMS érkezett
Name[it]=SMS ricevuto
Name[ko]=SMS 받음
@ -362,8 +324,6 @@ Name[x-test]=xxSMS Receivedxx
Name[zh_CN]=收到短信
Name[zh_TW]=您有收到短訊
Comment=Someone sent you an SMS
Comment[ar]=ثمّة من أرسل رسالة إليك
Comment[ast]=Daquién unvióte un SMS
Comment[bg]=Някой ви изпрати текстово съобщение
Comment[bs]=Neko Vam je poslao SMS poruku
Comment[ca]=Algú us ha enviat un SMS
@ -371,7 +331,6 @@ Comment[ca@valencia]=Algú vos ha enviat un SMS
Comment[cs]=Někdo vám poslal SMS
Comment[da]=Nogen sendte dig en SMS
Comment[de]=Jemand hat Ihnen eine SMS gesendet
Comment[el]=Κάποιος σας έστειλε SMS
Comment[en_GB]=Someone sent you an SMS
Comment[es]=Alguien le ha enviado un SMS
Comment[et]=Keegi saatis sulle SMS-i
@ -379,7 +338,6 @@ Comment[eu]=Norbaitek SMS bat bidali dizu
Comment[fi]=Sinulle lähetettiin tekstiviesti
Comment[fr]=Quelqu'un vous a envoyé un SMS
Comment[gl]=Recibiu unha mensaxe SMS de alguén.
Comment[he]=מישהו שלח לך SMS
Comment[hu]=Valaki SMS-t küldött önnek
Comment[it]=Hai ricevuto un SMS
Comment[ko]=누군가가 문자 메시지를 보냄
@ -405,15 +363,12 @@ Action=Popup
[Event/batteryLow]
Name=Battery Low
Name[ar]=البطّاريّة ضعيفة
Name[ast]=Batería baxa
Name[bg]=Изтощена батерия
Name[ca]=Bateria baixa
Name[ca@valencia]=Bateria baixa
Name[cs]=Baterie je téměř vybitá
Name[da]=Lavt batteri
Name[de]=Akku-Ladestand niedrig
Name[el]=Μπαταρία χαμηλή
Name[en_GB]=Battery Low
Name[es]=Batería baja
Name[et]=Aku laetus on madal
@ -422,7 +377,6 @@ Name[fi]=Akku vähissä
Name[fr]=Batterie faible
Name[gl]=Batería baixa
Name[hu]=Alacsony töltöttség
Name[ia]=Batteria basse
Name[it]=Batteria a livello basso
Name[ko]=배터리 부족
Name[nl]=Batterij op laag niveau
@ -443,8 +397,6 @@ Name[x-test]=xxBattery Lowxx
Name[zh_CN]=电池电量低
Name[zh_TW]=電池低電量
Comment=Your battery is in low state
Comment[ar]=بطّاريّتك في الحالة الضعيفة
Comment[ast]=La to batería ta escosándose
Comment[bg]=Батерията ви е с нисък заряд
Comment[bs]=Vaša baterija je gotovo prazna
Comment[ca]=La bateria està baixa
@ -452,7 +404,6 @@ Comment[ca@valencia]=La bateria està baixa
Comment[cs]=Máte slabou baterii
Comment[da]=Dit batteri er på lavt niveau
Comment[de]=Der Ladestand Ihres Akkus ist niedrig
Comment[el]=Η μπαταρία σας είναι σε χαμηλό επίπεδο
Comment[en_GB]=Your battery is in low state
Comment[es]=La batería está en nivel bajo
Comment[et]=Aku täituvus on madal
@ -460,7 +411,6 @@ Comment[eu]=Zure bateria egoera baxuan dago
Comment[fi]=Akkusi virta on vähissä
Comment[fr]=Votre batterie est faible
Comment[gl]=A batería está esgotándose.
Comment[he]=הבטריה שלך הולכת להגמר
Comment[hu]=Az akkumulátora feszültsége alacsony
Comment[it]=La tua batteria è al livello basso
Comment[ko]=배터리가 부족함
@ -486,15 +436,12 @@ Action=Popup
[Event/pingReceived]
Name=Ping Received
Name[ar]=استُلمت وكزة
Name[ast]=Ping recibíu
Name[bg]=Пингът е приет
Name[ca]=S'ha rebut un ping
Name[ca@valencia]=S'ha rebut un ping
Name[cs]=Ping přijat
Name[da]=Ping modtaget
Name[de]=Ping empfangen
Name[el]=Λήφθηκε ping
Name[en_GB]=Ping Received
Name[es]=Ping recibido
Name[et]=Pingi saamine
@ -502,7 +449,6 @@ Name[eu]=Ping jaso da
Name[fi]=Saatiin tiedustelupaketti
Name[fr]=Ping reçu
Name[gl]=Recibiuse un ping
Name[he]=התקבל פינג
Name[hu]=Ping érkezett
Name[it]=Ping ricevuto
Name[ko]=핑 받음
@ -524,8 +470,6 @@ Name[x-test]=xxPing Receivedxx
Name[zh_CN]=收到 Ping
Name[zh_TW]=收到Ping回應
Comment=Ping received
Comment[ar]=استُلمت وكزة
Comment[ast]=Recibióse un ping
Comment[bg]=Пингът е приет
Comment[bs]=Primili ste ping
Comment[ca]=S'ha rebut un ping
@ -533,7 +477,6 @@ Comment[ca@valencia]=S'ha rebut un ping
Comment[cs]=Ping přijat
Comment[da]=Ping modtaget
Comment[de]=Ping empfangen
Comment[el]=Λήφθηκε ping
Comment[en_GB]=Ping received
Comment[es]=Ping recibido
Comment[et]=Pingi saamine
@ -541,7 +484,6 @@ Comment[eu]=Ping jaso da
Comment[fi]=Saatiin tiedustelupaketti
Comment[fr]=Ping reçu
Comment[gl]=Recibiuse un “ping”.
Comment[he]=התקבל פינג
Comment[hu]=Ping érkezett
Comment[it]=Hai ricevuto un ping
Comment[ko]=핑 받음
@ -567,15 +509,12 @@ Action=Popup
[Event/notification]
Name=Generic Notification
Name[ar]=إخطار عموميّ
Name[ast]=Avisu xenéricu
Name[bg]=Общо уведомление
Name[ca]=Notificació genèrica
Name[ca@valencia]=Notificació genèrica
Name[cs]=Obecná hlášení
Name[da]=Generisk bekendtgørelse
Name[de]=Allgemeine Benachrichtigung
Name[el]=Γενική ειδοποίηση
Name[en_GB]=Generic Notification
Name[es]=Notificación genérica
Name[et]=Üldine märguanne
@ -583,7 +522,6 @@ Name[eu]=Jakinarazpen arrunta
Name[fi]=Yleinen ilmoitus
Name[fr]=Notification
Name[gl]=Notificación xenérica
Name[he]=התראה כללית
Name[hu]=Általános értesítés
Name[it]=Notifica generica
Name[ko]=일반 알림
@ -605,8 +543,6 @@ Name[x-test]=xxGeneric Notificationxx
Name[zh_CN]=一般通知
Name[zh_TW]=通用通知
Comment=Notification received
Comment[ar]=استُلم إخطار
Comment[ast]=Recibióse un avisu
Comment[bg]=Уведомлението е прието
Comment[bs]=Primjeno obavještenje
Comment[ca]=Notificació rebuda
@ -614,7 +550,6 @@ Comment[ca@valencia]=Notificació rebuda
Comment[cs]=Bylo přijato upozornění
Comment[da]=Bekendtgørelse modtaget
Comment[de]=Benachrichtigung eingegangen
Comment[el]=Λήφθηκε ειδοποίηση
Comment[en_GB]=Notification received
Comment[es]=Notificación recibida
Comment[et]=Saadi märguanne
@ -622,7 +557,6 @@ Comment[eu]=Jakinarazpena jaso da
Comment[fi]=Saatiin ilmoitus
Comment[fr]=Notification reçue
Comment[gl]=Recibiuse unha notificación.
Comment[he]=התראה התקבלה
Comment[hu]=Értesítés érkezett
Comment[it]=Hai ricevuto una notifica
Comment[ko]=알림 받음
@ -648,15 +582,12 @@ Action=Popup
[Event/transferReceived]
Name=File Transfer
Name[ar]=نقل الملفّات
Name[ast]=Tresferencia de ficheros
Name[bg]=Прехвърляне на файл
Name[ca]=Transferència de fitxers
Name[ca@valencia]=Transferència de fitxers
Name[cs]=Přenos souboru
Name[da]=Filoverførsel
Name[de]=Dateiübertragung
Name[el]=Μεταφορά αρχείου
Name[en_GB]=File Transfer
Name[es]=Transferencia de archivo
Name[et]=Failiedastus
@ -664,9 +595,7 @@ Name[eu]=Fitxategi-transferentzia
Name[fi]=Tiedostonsiirto
Name[fr]=Transfert de fichiers
Name[gl]=Transferencia dun ficheiro
Name[he]=העברת קובץ
Name[hu]=Fájlátvitel
Name[ia]=Transferimento de file
Name[it]=Trasferimento file
Name[ko]=파일 전송
Name[nl]=Bestandsoverdracht
@ -687,15 +616,12 @@ Name[x-test]=xxFile Transferxx
Name[zh_CN]=文件传送
Name[zh_TW]=檔案傳輸
Comment=Incoming file
Comment[ar]=ملفّ قادم
Comment[ast]=Ficheru entrante
Comment[bg]=Входящ файл
Comment[ca]=Fitxer entrant
Comment[ca@valencia]=Fitxer entrant
Comment[cs]=Příchozí soubor
Comment[da]=Indkommende fil
Comment[de]=Eingehende Datei
Comment[el]=Εισερχόμενο αρχείο
Comment[en_GB]=Incoming file
Comment[es]=Archivo entrante
Comment[et]=Sisenev fail
@ -703,7 +629,6 @@ Comment[eu]=Sarrerako fitxategia
Comment[fi]=Saapuva tiedosto
Comment[fr]=Fichier entrant
Comment[gl]=Ficheiro entrante
Comment[he]=קובץ מגיע
Comment[hu]=Bejövő fájl
Comment[it]=File in ingresso
Comment[ko]=파일 수신

View file

@ -3,8 +3,6 @@ Type=ServiceType
X-KDE-ServiceType=KdeConnect/Plugin
X-KDE-Derived=KPluginInfo
Name=KDEConnect Plugin
Name[ar]=ملحقة KDEConnect
Name[ast]=Complementu de KDEConnect
Name[bg]=Приставка на KDEConnect
Name[bs]=Priključak za KDE konekciju
Name[ca]=Connector del KDE Connect
@ -12,7 +10,6 @@ Name[ca@valencia]=Connector del KDE Connect
Name[cs]=Modul KDEConnect
Name[da]=KDEConnect-plugin
Name[de]=KDEConnect-Modul
Name[el]=Πρόσθετο του KDEConnect
Name[en_GB]=KDEConnect Plugin
Name[es]=Complemento de KDEConnect
Name[et]=KDEConnecti plugin
@ -20,7 +17,6 @@ Name[eu]=KDEConnect plugina
Name[fi]=KDE Connect -liitännäinen
Name[fr]=Module externe KDEConnect
Name[gl]=Complemento de KDE Connect
Name[he]=תוספי KDEConnect
Name[hu]=KDEConnect bővítmény
Name[it]=Estensione KDEConnect
Name[ko]=KDEConnect

View file

@ -13,13 +13,11 @@
}
],
"Description": "Locks your systems",
"Description[ar]": "أوصد الأنظمة",
"Description[ca@valencia]": "Bloqueja els vostres sistemes",
"Description[ca]": "Bloqueja els vostres sistemes",
"Description[cs]": "Zamkne vaše systémy",
"Description[da]": "Låser dine systemer",
"Description[de]": "Sperrt Ihre Systeme",
"Description[el]": "Κλειδώνει τα συστήματά σας",
"Description[es]": "Bloquear sus sistemas",
"Description[et]": "Oma süsteemide lukustamine",
"Description[eu]": "Zure sistemak blokeatzen ditu",
@ -50,7 +48,6 @@
"Id": "kdeconnect_lockdevice",
"License": "GPL",
"Name": "LockDevice",
"Name[ar]": "أوصد الجهاز",
"Name[ca@valencia]": "Bloqueja el dispositiu",
"Name[ca]": "Bloqueja el dispositiu",
"Name[cs]": "Uzamknout zařízení",

View file

@ -5,7 +5,6 @@
{
"Email": "ahmedibrahimkhali@gmail.com",
"Name": "Ahmed I. Khalil",
"Name[ar]": "أحمد إبراهيم خليل",
"Name[sr@ijekavian]": "Ахмед И. Калил",
"Name[sr@ijekavianlatin]": "Ahmed I. Kalil",
"Name[sr@latin]": "Ahmed I. Kalil",
@ -14,13 +13,11 @@
}
],
"Description": "Use your phone as a touchpad and keyboard",
"Description[ar]": "استخدم الهاتف كفأرة ولوحة مفاتيح",
"Description[ca@valencia]": "Empra el telèfon com un ratolí tàctil i teclat",
"Description[ca]": "Empra el telèfon com un ratolí tàctil i teclat",
"Description[cs]": "Používejte svůj telefon jako touchpad a klávesnici",
"Description[da]": "Brug din telefon som touchpad og tastatur",
"Description[de]": "Verwendet Ihr Handy als Touchpad und Tastatur",
"Description[el]": "Χρήση του τηλεφώνου σας ως οθόνη αφής και πληκτρολογίου",
"Description[es]": "Usar teléfono como panel táctil y teclado",
"Description[et]": "Telefoni kasutamine puutepadja ja klaviatuurina",
"Description[eu]": "Erabili zure telefonoa touchpad eta teklatu gisa",
@ -52,13 +49,11 @@
"Id": "kdeconnect_mousepad",
"License": "GPL",
"Name": "Virtual input",
"Name[ar]": "دخل وهميّ",
"Name[ca@valencia]": "Entrada virtual",
"Name[ca]": "Entrada virtual",
"Name[cs]": "Virtuální vstup",
"Name[da]": "Virtuelt input",
"Name[de]": "Virtuelle Eingabe",
"Name[el]": "Εικονικά στοιχεία εισόδου",
"Name[es]": "Entrada virtual",
"Name[et]": "Virtuaalsisestus",
"Name[eu]": "Sarrera birtuala",

View file

@ -5,7 +5,6 @@
{
"Email": "ahmedibrahimkhali@gmail.com",
"Name": "Ahmed I. Khalil",
"Name[ar]": "أحمد إبراهيم خليل",
"Name[sr@ijekavian]": "Ахмед И. Калил",
"Name[sr@ijekavianlatin]": "Ahmed I. Kalil",
"Name[sr@latin]": "Ahmed I. Kalil",
@ -14,13 +13,11 @@
}
],
"Description": "Use your phone as a touchpad and keyboard",
"Description[ar]": "استخدم الهاتف كفأرة ولوحة مفاتيح",
"Description[ca@valencia]": "Empra el telèfon com un ratolí tàctil i teclat",
"Description[ca]": "Empra el telèfon com un ratolí tàctil i teclat",
"Description[cs]": "Používejte svůj telefon jako touchpad a klávesnici",
"Description[da]": "Brug din telefon som touchpad og tastatur",
"Description[de]": "Verwendet Ihr Handy als Touchpad und Tastatur",
"Description[el]": "Χρήση του τηλεφώνου σας ως οθόνη αφής και πληκτρολογίου",
"Description[es]": "Usar teléfono como panel táctil y teclado",
"Description[et]": "Telefoni kasutamine puutepadja ja klaviatuurina",
"Description[eu]": "Erabili zure telefonoa touchpad eta teklatu gisa",
@ -52,13 +49,11 @@
"Id": "kdeconnect_mousepad",
"License": "GPL",
"Name": "Virtual input",
"Name[ar]": "دخل وهميّ",
"Name[ca@valencia]": "Entrada virtual",
"Name[ca]": "Entrada virtual",
"Name[cs]": "Virtuální vstup",
"Name[da]": "Virtuelt input",
"Name[de]": "Virtuelle Eingabe",
"Name[el]": "Εικονικά στοιχεία εισόδου",
"Name[es]": "Entrada virtual",
"Name[et]": "Virtuaalsisestus",
"Name[eu]": "Sarrera birtuala",

View file

@ -13,13 +13,11 @@
}
],
"Description": "Remote control your music and videos",
"Description[ar]": "تحكّم بالموسيقى والفيديو عن بعد",
"Description[ca@valencia]": "Comandament a distància per a la vostra música i vídeos",
"Description[ca]": "Comandament a distància per a la vostra música i vídeos",
"Description[cs]": "Ovládejte vzdáleně vaši hudbu a videa",
"Description[da]": "Fjernbetjen din musik og videoer",
"Description[de]": "Fernbedienung für Musik und Videos",
"Description[el]": "Απομακρυσμένος έλεγχος της μουσικής σας και των βίντεο",
"Description[es]": "Controlar remotamente vídeos y música",
"Description[et]": "Oma muusika ja videote kaugjuhtimine",
"Description[eu]": "Kontrolatu urrunetik zure musika eta bideoak",
@ -51,13 +49,11 @@
"Id": "kdeconnect_mpriscontrol",
"License": "GPL",
"Name": "Multimedia control receiver",
"Name[ar]": "مستقبل تحكّمات الوسائط المتعدّدة",
"Name[ca@valencia]": "Receptor del comandament multimèdia",
"Name[ca]": "Receptor del comandament multimèdia",
"Name[cs]": "Dálkový ovladač multimédií",
"Name[da]": "Modtager til multimediekontrol",
"Name[da]": "Multimediekontrol-modtager",
"Name[de]": "Steuerung für Multimedia-Empfänger",
"Name[el]": "Δέκτης ελέγχου πολυμέσων",
"Name[es]": "Receptor de control multimedia",
"Name[et]": "Multimeedia juhtimine",
"Name[eu]": "Multimedia-kontroladore hartzailea",

View file

@ -81,8 +81,14 @@ void MprisControlPlugin::addPlayer(const QString& service)
if (identity.isEmpty()) {
identity = service.mid(sizeof("org.mpris.MediaPlayer2"));
}
playerList[identity] = service;
qCDebug(KDECONNECT_PLUGIN_MPRIS) << "Mpris addPlayer" << service << "->" << identity;
QString uniqueName = identity;
for (int i = 1 ; !playerList[uniqueName].isEmpty() ; i++) {
uniqueName = identity + " [" + i + "]";
}
playerList[uniqueName] = service;
qCDebug(KDECONNECT_PLUGIN_MPRIS) << "Mpris addPlayer" << service << "->" << uniqueName;
sendPlayerList();
OrgFreedesktopDBusPropertiesInterface* freedesktopInterface = new OrgFreedesktopDBusPropertiesInterface(service, QStringLiteral("/org/mpris/MediaPlayer2"), QDBusConnection::sessionBus(), this);

View file

@ -13,13 +13,11 @@
}
],
"Description": "Control MPRIS services",
"Description[ar]": "تحكّم بخدمات MPRIS",
"Description[ca@valencia]": "Serveis de control del MPRIS",
"Description[ca]": "Serveis de control del MPRIS",
"Description[cs]": "Ovládejte služby MPRIS",
"Description[da]": "Kontrollér MPRIS-tjenester",
"Description[de]": "Steuerung von MPRIS-Diensten",
"Description[el]": "Έλεγχος υπηρεσιών MPRIS",
"Description[es]": "Controlar los servicios MPRIS",
"Description[et]": "MPRIS-teenuste juhtimine",
"Description[eu]": "Kontrolatu MPRIS zerbitzuak",
@ -50,7 +48,6 @@
"Id": "kdeconnect_mprisremote",
"License": "GPL",
"Name": "MprisRemote",
"Name[ar]": "Mpris عن بعد",
"Name[et]": "Kaug-Mpris",
"Name[fi]": "MPRIS-kauko-ohjain",
"Name[nn]": "MPRIS-fjernkontroll",

View file

@ -7,6 +7,8 @@ set(kdeconnect_notifications_SRCS
sendreplydialog.cpp
)
ki18n_wrap_ui(kdeconnect_notifications_SRCS sendreplydialog.ui)
kdeconnect_add_plugin(kdeconnect_notifications JSON kdeconnect_notifications.json SOURCES ${kdeconnect_notifications_SRCS})
target_link_libraries(kdeconnect_notifications

View file

@ -13,19 +13,16 @@
}
],
"Description": "Show device's notifications on this computer and keep them in sync",
"Description[ar]": "أظهر إخطارات الجهاز على هذا الحاسوب وأبقها متزامنة",
"Description[ca@valencia]": "Mostra les notificacions del dispositiu a l'ordinador i les manté sincronitzades",
"Description[ca]": "Mostra les notificacions del dispositiu a l'ordinador i les manté sincronitzades",
"Description[cs]": "Zobrazit upozornění telefonu v počítači a udržovat je synchronizovaná",
"Description[da]": "Vis enhedens bekendtgørelser på denne computer og hold dem synkroniseret",
"Description[de]": "Benachrichtigungen des Geräts auf diesem Rechner anzeigen und abgleichen",
"Description[el]": "Εμφάνιση ειδοποιήσεων συσκευής στον υπολογιστή αυτόν και συγχρονισμός τους",
"Description[es]": "Mostrar notificaciones del dispositivo en este equipo y mantenerlas en sincronía",
"Description[et]": "Seadme märguannete näitamine arvutis ja nende sünkroonis hoidmine",
"Description[eu]": "Erakutsi gailuaren jakinarazpenak ordenagailu honetan eta mantendu sinkronizatuta",
"Description[fi]": "Näytä laitteen ilmoitukset tällä tietokoneella ja pidä ne ajan tasalla",
"Description[fr]": "Affichez les notifications du téléphone sur l'ordinateur et synchronisez-les",
"Description[gl]": "Mostrar as notificacións do dispositivo neste computador e mantelas sincronizadas.",
"Description[it]": "Mostra le notifiche del telefono sul tuo computer e tienile sincronizzate",
"Description[ko]": "휴대폰 알림을 컴퓨터에 표시하고 동기화하기",
"Description[nl]": "Apparaatmeldingen op deze computer tonen en ze gesynchroniseerd houden",
@ -50,19 +47,16 @@
"Id": "kdeconnect_notifications",
"License": "GPL",
"Name": "Receive notifications",
"Name[ar]": "استقبل الإخطارات",
"Name[ca@valencia]": "Recepció de les notificacions",
"Name[ca]": "Recepció de les notificacions",
"Name[cs]": "Přijímat oznámení",
"Name[da]": "Modtag bekendtgørelser",
"Name[de]": "Benachrichtigungen empfangen",
"Name[el]": "Λήψη ειδοποιήσεων",
"Name[es]": "Recibir notificaciones",
"Name[et]": "Märguannete vastuvõtmine",
"Name[eu]": "Jaso jakinarazpenak",
"Name[fi]": "Vastaanota ilmoituksia",
"Name[fr]": "Recevoir les notifications",
"Name[gl]": "Recibir notificacións",
"Name[it]": "Ricevi notifiche",
"Name[ko]": "알림 받기",
"Name[nl]": "Meldingen ontvangen",

View file

@ -160,6 +160,7 @@ void NotificationsDbusInterface::replyRequested(Notification* noti)
SendReplyDialog* dialog = new SendReplyDialog(originalMessage, replyId, appName);
connect(dialog, &SendReplyDialog::sendReply, this, &NotificationsDbusInterface::sendReply);
dialog->show();
dialog->raise();
}
void NotificationsDbusInterface::sendReply(const QString& replyId, const QString& message)

View file

@ -27,34 +27,30 @@
#include <KLocalizedString>
#include "ui_sendreplydialog.h"
SendReplyDialog::SendReplyDialog(const QString& originalMessage, const QString& replyId, const QString& topicName, QWidget* parent)
: QDialog(parent)
, m_replyId(replyId)
, m_ui(new Ui::SendReplyDialog)
{
QVBoxLayout* layout = new QVBoxLayout;
m_ui->setupUi(this);
m_ui->textView->setText(topicName + ": \n" + originalMessage);
QTextEdit* textView = new QTextEdit(this);
textView->setReadOnly(true);
textView->setText(topicName + ": \n" + originalMessage);
layout->addWidget(textView);
auto button = m_ui->buttonBox->button(QDialogButtonBox::Ok);
button->setText(i18n("Send"));
m_textEdit = new QTextEdit(this);
layout->addWidget(m_textEdit);
QPushButton* sendButton = new QPushButton(i18n("Send"), this);
connect(sendButton, &QAbstractButton::clicked, this, &SendReplyDialog::sendButtonClicked);
layout->addWidget(sendButton);
setLayout(layout);
connect(this, &QDialog::accepted, this, &SendReplyDialog::sendButtonClicked);
setWindowTitle(topicName);
setWindowIcon(QIcon::fromTheme(QStringLiteral("kdeconnect")));
setAttribute(Qt::WA_DeleteOnClose);
}
SendReplyDialog::~SendReplyDialog() = default;
void SendReplyDialog::sendButtonClicked()
{
Q_EMIT sendReply(m_replyId, m_textEdit->toPlainText());
Q_EMIT sendReply(m_replyId, m_ui->replyEdit->toPlainText());
close();
}

View file

@ -24,9 +24,7 @@
#include <QDialog>
#include <QSize>
class QTextEdit;
class QLineEdit;
class QPushButton;
namespace Ui { class SendReplyDialog; }
class SendReplyDialog : public QDialog
{
@ -34,6 +32,8 @@ class SendReplyDialog : public QDialog
public:
explicit SendReplyDialog(const QString& originalMessage, const QString& replyId, const QString& topicName, QWidget* parent = nullptr);
~SendReplyDialog() override;
QSize sizeHint() const override;
private Q_SLOTS:
@ -43,8 +43,8 @@ Q_SIGNALS:
void sendReply(const QString& replyId, const QString& messageBody);
private:
QString m_replyId;
QTextEdit* m_textEdit;
const QString m_replyId;
const QScopedPointer<Ui::SendReplyDialog> m_ui;
};
#endif

View file

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>SendReplyDialog</class>
<widget class="QDialog" name="SendReplyDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>400</width>
<height>300</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTextEdit" name="textView">
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QTextEdit" name="replyEdit"/>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="standardButtons">
<set>QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>SendReplyDialog</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>82</x>
<y>274</y>
</hint>
<hint type="destinationlabel">
<x>2</x>
<y>279</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>SendReplyDialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>149</x>
<y>284</y>
</hint>
<hint type="destinationlabel">
<x>143</x>
<y>298</y>
</hint>
</hints>
</connection>
</connections>
</ui>

View file

@ -13,13 +13,11 @@
}
],
"Description": "Pause music/videos during a phone call",
"Description[ar]": "ألبث الموسيقى/الفيديو أثناء المكالمات الهاتفيّة",
"Description[ca@valencia]": "Pausa la música/vídeos durant una trucada telefònica",
"Description[ca]": "Pausa la música/vídeos durant una trucada telefònica",
"Description[cs]": "Pozastavit hudbu/video během telefonátu",
"Description[da]": "Sæt musik/videoer på pause under opkald",
"Description[da]": "Sæt musik/video på pause under telefonsamtaler",
"Description[de]": "Hält Musik oder Videos während eines Anrufs an",
"Description[el]": "Παύση μουσικής/βίντεο κατά τη διάρκεια κλήσης",
"Description[es]": "Pausar música/video durante las llamadas telefónicas",
"Description[et]": "Muusika või video peatamine telefonikõne ajal",
"Description[eu]": "Pausatu musika / bideoak deietan",
@ -51,13 +49,11 @@
"Id": "kdeconnect_pausemusic",
"License": "GPL",
"Name": "Pause media during calls",
"Name[ar]": "ألبث الوسائط أثناء المكالمات",
"Name[ca@valencia]": "Pausa els suports durant les trucades",
"Name[ca]": "Pausa els suports durant les trucades",
"Name[cs]": "Pozastavit média během telefonátu",
"Name[da]": "Sæt medier på pause under opkald",
"Name[de]": "Medium bei Anrufen anhalten",
"Name[el]": "Παύση πολυμέσων στη διάρκεια κλήσεων",
"Name[es]": "Pausar medios durante las llamadas",
"Name[et]": "Meedia peatamine kõne ajal",
"Name[eu]": "Pausatu media deietan",

View file

@ -6,8 +6,6 @@ X-KDE-Library=kdeconnect_pausemusic_config
X-KDE-ParentComponents=kdeconnect_pausemusic
Name=Pause Music plugin settings
Name[ar]=إعدادات ملحقة إلباث الموسيقى
Name[ast]=Axustes del complementu de posar música
Name[bg]=Настройки на приставката за поставяне на пауза
Name[bs]=Zaustavi Muziku postavke dodatka
Name[ca]=Ajustaments del connector Pausa la música
@ -15,7 +13,6 @@ Name[ca@valencia]=Ajustaments del connector Pausa la música
Name[cs]=Nastavení modulu Pozastavení hudby
Name[da]=Indstilling af plugin til at sætte musik på pause
Name[de]=Modul-Einstellungen für das Anhalten der Musikwiedergabe
Name[el]=Ρυθμίσεις προσθέτου παύσης μουσικής
Name[en_GB]=Pause Music plugin settings
Name[es]=Ajustes del complemento PauseMusic
Name[et]=Muusika peatamise plugina seadistused
@ -23,7 +20,6 @@ Name[eu]=Pausatu-musika pluginaren ezarpenak
Name[fi]=Keskeytä musiikki -liitännäisen asetukset
Name[fr]=Paramètres du module de mise en pause
Name[gl]=Configuración do complemento para deter a música
Name[he]=הגדרות התוספת השהיית המוזיקה
Name[hu]=Zene szüneteltetése bővítmény beállításai
Name[it]=Impostazioni estensione Sospendi musica
Name[ko]=

View file

@ -13,13 +13,11 @@
}
],
"Description": "Send and receive pings",
"Description[ar]": "أرسل الوخزات واستقبلها",
"Description[ca@valencia]": "Envia i rep pings",
"Description[ca]": "Envia i rep pings",
"Description[cs]": "Posílat a přijímat ping",
"Description[da]": "Send og modtag ping",
"Description[de]": "Senden und Empfangen von Pings",
"Description[el]": "Αποστολή και λήψη pings",
"Description[es]": "Enviar y recibir pings",
"Description[et]": "Pingide saatmine ja vastuvõtmine",
"Description[eu]": "Bidali eta jaso pingak",
@ -51,7 +49,6 @@
"Id": "kdeconnect_ping",
"License": "GPL",
"Name": "Ping",
"Name[ar]": "وخزة",
"Name[fi]": "Tiedustelupaketti",
"Name[fr]": "Commande « Ping »",
"Name[ko]": "핑",

View file

@ -13,19 +13,16 @@
}
],
"Description": "Trigger commands predefined on the remote device",
"Description[ar]": "نفّذ أوامر معرّفة مسبقًا في الجهاز البعيد",
"Description[ca@valencia]": "Activa ordes predefinides en el dispositiu remot",
"Description[ca]": "Activa ordres predefinides en el dispositiu remot",
"Description[cs]": "Spouštět příkazy předpřipravené na vzdáleném zařízení",
"Description[da]": "Udløs kommandoer som er prædefinerede på den eksterne enhed",
"Description[de]": "Vordefinierte Befehle auf dem entfernten Gerät ausführen",
"Description[el]": "Ενεργοποίηση προκαθορισμένων εντολών στην απομακρυσμένη συσκευή",
"Description[es]": "Desencadenar órdenes predefinidas en el dispositivo remoto",
"Description[et]": "Kaugseadmes määratud käskude käivitamine",
"Description[eu]": "Exekutatu urruneko gailuan aurretiaz zehaztutako komandoak",
"Description[fi]": "Suorita ennakkoon määriteltyjä komentoja etälaitteella",
"Description[fr]": "Exécuter des commandes prédéfinies sur le périphérique distant",
"Description[gl]": "Provocar ordes predefinidas no dispositivo remoto.",
"Description[it]": "Innesca comandi predefiniti sul dispositivo remoto",
"Description[ko]": "원격 장치에 미리 정의한 트리거 명령",
"Description[nl]": "Start commando's voorgedefinieerd op het apparaat op afstand",
@ -49,25 +46,23 @@
"Id": "kdeconnect_remotecommands",
"License": "GPL",
"Name": "Host remote commands",
"Name[ar]": "استضف الأوامر البعيدة",
"Name[ca@valencia]": "Allotja ordes remotes",
"Name[ca]": "Allotja ordres remotes",
"Name[cs]": "Přijímat vzdálené příkazy",
"Name[da]": "Vært for eksterne kommandoer",
"Name[el]": "Απομακρυσμένη εκτέλεση εντολών",
"Name[es]": "Órdenes en servidor remoto",
"Name[et]": "Kaugkäsud",
"Name[eu]": "Ostalariaren urruneko komandoak",
"Name[fi]": "Etäkomennot",
"Name[fr]": "Exécuter des commandes distantes",
"Name[gl]": "Ordes remotas do servidor",
"Name[it]": "Comandi remoti host",
"Name[ko]": "호스트 원격 명령",
"Name[nl]": "Host voor commando's op afstand",
"Name[nl]": "Commando's op afstand hosten",
"Name[nn]": "Fjernkommandoar",
"Name[pl]": "Wykonuj polecenia zdalne",
"Name[pt]": "Alojar os comandos remotos",
"Name[ru]": "Выполнение команд на устройстве",
"Name[sk]": "Vzdialené príkazy hostiteľa",
"Name[sr@ijekavian]": "Даљинске наредбе домаћина",
"Name[sr@ijekavianlatin]": "Daljinske naredbe domaćina",
"Name[sr@latin]": "Daljinske naredbe domaćina",
@ -76,7 +71,6 @@
"Name[tr]": "Sunucu uzaktan komutları",
"Name[uk]": "Віддалені команди вузлу",
"Name[x-test]": "xxHost remote commandsxx",
"Name[zh_CN]": "主机远程命令",
"Name[zh_TW]": "主機與遠端指令",
"ServiceTypes": [
"KdeConnect/Plugin"

View file

@ -13,13 +13,11 @@
}
],
"Description": "Control Remote systems",
"Description[ar]": "تحكّم بالأنظمة البعيدة",
"Description[ca@valencia]": "Sistemes de control remot",
"Description[ca]": "Sistemes de control remot",
"Description[cs]": "Ovládejte vzdálené systémy",
"Description[da]": "Kontrollér eksterne systemer",
"Description[da]": "Fjernbetjen systemer",
"Description[de]": "Entfernte Systeme steuern",
"Description[el]": "Έλεγχος ανταπόκρισης απομακρυσμένων συστημάτων",
"Description[es]": "Controlar sistemas remotos",
"Description[et]": "Kaugjuhtimissüsteemid",
"Description[eu]": "Kontrolatu urruneko sistemak",
@ -39,7 +37,7 @@
"Description[sr@ijekavianlatin]": "Kontroliše udaljene sisteme",
"Description[sr@latin]": "Kontroliše udaljene sisteme",
"Description[sr]": "Контролише удаљене системе",
"Description[sv]": "Styr externt system",
"Description[sv]": "Styr fjärrsystem",
"Description[tr]": "Uzak Sistemleri Kontrol Et",
"Description[uk]": "Системи віддаленого керування",
"Description[x-test]": "xxControl Remote systemsxx",
@ -50,11 +48,10 @@
"Id": "kdeconnect_remotecontrol",
"License": "GPL",
"Name": "RemoteControl",
"Name[ar]": "التّحكّم عن بعد",
"Name[ca@valencia]": "Control remot",
"Name[ca]": "Control remot",
"Name[cs]": "Dálkové ovládání",
"Name[da]": "FjernBetjening",
"Name[da]": "Fjernbetjening",
"Name[de]": "Fernsteuerung",
"Name[es]": "Control remoto",
"Name[et]": "Kaugjuhtimine",

View file

@ -5,6 +5,7 @@
{
"Email": "holger.k@elberer.de",
"Name": "Holger Kaelberer",
"Name[da]": "Holger Freyther",
"Name[sr@ijekavian]": "Холгер Келберер",
"Name[sr@ijekavianlatin]": "Holger Kelberer",
"Name[sr@latin]": "Holger Kelberer",
@ -20,13 +21,12 @@
"Description[es]": "Use su teclado para enviar eventos de teclado a su dispositivo vinculado",
"Description[eu]": "Erabili zure teklatua tekla-gertaerak zure parekatutako gailura bidaltzeko",
"Description[fr]": "Utiliser votre clavier pour envoyer des évènements de touche au périphérique associé",
"Description[gl]": "Usar o teclado para enviar eventos de tecla ao dispositivo emparellado.",
"Description[it]": "Utilizza la tua tastiera per inviare eventi di pressione dei tasti al dispositivo associato",
"Description[nl]": "Uw toetsenbord gebruiken om toetsgebeurtenissen naar uw gepaarde apparaat te verzenden",
"Description[nn]": "Bruk tastaturet til å senda tastetrykk til den para eininga",
"Description[pl]": "Użyj swojej klawiatury do wysyłania naciśnięć klawiszy do swojego sparowanego urządzenia",
"Description[pt]": "Usar o seu teclado para enviar eventos de teclas para o seu dispositivo emparelhado",
"Description[ru]": "Используйте клавиатуру для отправки нажатий клавиш на сопряжённое устройство",
"Description[pt]": "Use o seu teclado para enviar eventos de teclado para o seu dispositivo emparelhado",
"Description[sk]": "Použite vašu klávesnicu na posielanie klávesových udalostí vášmu spárovanému zariadeniu",
"Description[sr@ijekavian]": "Користите тастатуру за куцање на упареном уређају",
"Description[sr@ijekavianlatin]": "Koristite tastaturu za kucanje na uparenom uređaju",
"Description[sr@latin]": "Koristite tastaturu za kucanje na uparenom uređaju",
@ -48,13 +48,12 @@
"Name[es]": "Teclado remoto desde el equipo de escritorio",
"Name[eu]": "Urruneko teklatua mahaigainetik",
"Name[fr]": "Clavier distant depuis le bureau",
"Name[gl]": "Teclado remoto do escritorio",
"Name[it]": "Tastiera remota dal desktop",
"Name[nl]": "Toetsenbord op afstand vanaf het bureaublad",
"Name[nn]": "Fjerntastatur frå skrivebordet",
"Name[pl]": "Zdalna klawiatura z pulpitu",
"Name[pt]": "Teclado remoto do ambiente de trabalho",
"Name[ru]": "Удалённая клавиатура с компьютера",
"Name[pt]": "Teclado remoto no ecrã",
"Name[sk]": "Vzdialená klávesnica z plochy",
"Name[sr@ijekavian]": "Даљинска тастатура са радне површи",
"Name[sr@ijekavianlatin]": "Daljinska tastatura sa radne površi",
"Name[sr@latin]": "Daljinska tastatura sa radne površi",

View file

@ -22,19 +22,16 @@
}
],
"Description": "Execute console commands remotely",
"Description[ar]": "نفّذ أوامر طرفيّة عن بعد",
"Description[ca@valencia]": "Executa ordes de la consola de forma remota",
"Description[ca]": "Executa ordres de la consola de forma remota",
"Description[cs]": "Spouštět konzolové příkazy vzdáleně",
"Description[da]": "Kør konsolkommandoer udefra",
"Description[de]": "Entfernte Konsolenbefehle ausführen",
"Description[el]": "Απομακρυσμένη εκτέλεση εντολών του τερματικού",
"Description[es]": "Ejecute órdenes de consola remotamente",
"Description[et]": "Konsoolikäskude kaugkäivitamine",
"Description[eu]": "Exekutatu kontsolako komandoak urrunetik",
"Description[fi]": "Suorita konsolikomentoja etänä",
"Description[fr]": "Exécute des commandes console à distance",
"Description[gl]": "Executar ordes de consola remotamente.",
"Description[it]": "Esegui da remoto comandi della console",
"Description[ko]": "원격으로 콘솔 명령 실행",
"Description[nl]": "Commando's in de terminal op afstand laten uitvoeren",
@ -52,27 +49,22 @@
"Description[tr]": "Konsol komutlarını uzaktan çalıştır",
"Description[uk]": "Віддалене виконання консольних команд",
"Description[x-test]": "xxExecute console commands remotelyxx",
"Description[zh_CN]": "远程执行控制台命令",
"Description[zh_TW]": "遠程執行控制台命令",
"EnabledByDefault": true,
"Icon": "system-run",
"Id": "kdeconnect_runcommand",
"License": "GPL",
"Name": "Run commands",
"Name[ar]": "شغّل أوامر",
"Name[ca@valencia]": "Executa ordes",
"Name[ca]": "Executa ordres",
"Name[cs]": "Spustit příkazy",
"Name[da]": "Kør kommandoer",
"Name[de]": "Befehle ausführen",
"Name[el]": "Εκτέλεση εντολών",
"Name[es]": "Ejecutar órdenes",
"Name[et]": "Käskude käivitamine",
"Name[eu]": "Exekutatu komandoak",
"Name[fi]": "Suorita komentoja",
"Name[fr]": "Exécute des commandes",
"Name[gl]": "Executar ordes",
"Name[ia]": "Exeque commandos",
"Name[it]": "Esegui comandi",
"Name[ko]": "명령 실행",
"Name[nl]": "Commando's uitvoeren",
@ -90,7 +82,6 @@
"Name[tr]": "Komut çalıştır",
"Name[uk]": "Виконання команд",
"Name[x-test]": "xxRun commandsxx",
"Name[zh_CN]": "执行命令",
"Name[zh_TW]": "執行命令",
"ServiceTypes": [
"KdeConnect/Plugin"

View file

@ -6,22 +6,17 @@ X-KDE-Library=kdeconnect_runcommand_config
X-KDE-ParentComponents=kdeconnect_runcommand
Name=Run Command plugin settings
Name[ar]=إعدادات ملحقة تشغيل الأوامر
Name[ast]=Axustes del complementu d'execución de comandos
Name[ca]=Ajustaments del connector Executa ordres
Name[ca@valencia]=Ajustaments del connector Executa ordes
Name[cs]=Nastavení modulu Spustit příkaz
Name[da]=Indstilling af kør kommando-plugin
Name[de]=Modul-Einstellungen für Befehlsausführung
Name[el]=Ρυθμίσεις προσθέτου εκτέλεσης εντολής
Name[en_GB]=Run Command plugin settings
Name[es]=Ajustes del complemento de ejecución de órdenes
Name[et]=Käsu käivitamise plugina seadistused
Name[eu]=Exekutatu komandoa pluginaren ezarpenak
Name[fi]=Suorita komento -liitännäisen asetukset
Name[fr]=Configuration du module externe d'exécution de commande
Name[gl]=Configuración do complemento de orde de executar
Name[he]=הגדרת התוסף הרץ פקודה
Name[it]=Impostazioni estensione Esegui comando
Name[ko]=
Name[nl]=Plug-in-instellingen van commando Uitvoeren
@ -39,7 +34,6 @@ Name[sv]=Inställningar av insticksprogram för kör kommando
Name[tr]=Komut Çalıştır eklenti ayarları
Name[uk]=Параметри додатка запуску команд
Name[x-test]=xxRun Command plugin settingsxx
Name[zh_CN]=
Name[zh_TW]=
Categories=Qt;KDE;X-KDE-settings-kdeconnect;

View file

@ -65,7 +65,7 @@ bool RunCommandPlugin::receivePackage(const NetworkPackage& np)
qCWarning(KDECONNECT_PLUGIN_RUNCOMMAND) << key << "is not a configured command";
}
const QJsonObject commandJson = value.toObject();
qDebug() << "Running:" << "/bin/sh" << "-c" << commandJson[QStringLiteral("command")].toString();
qCInfo(KDECONNECT_PLUGIN_RUNCOMMAND) << "Running:" << "/bin/sh" << "-c" << commandJson[QStringLiteral("command")].toString();
QProcess::startDetached(QStringLiteral("/bin/sh"), QStringList()<< QStringLiteral("-c") << commandJson[QStringLiteral("command")].toString());
return true;
}

View file

@ -11,13 +11,11 @@
}
],
"Description": "Inhibit the screensaver when the device is connected",
"Description[ar]": "امنع حافظة الشّاشة إن كان الجهاز متّصلًا",
"Description[ca@valencia]": "Inhibeix l'estalvi de pantalla quan es connecta el dispositiu",
"Description[ca]": "Inhibeix l'estalvi de pantalla quan es connecta el dispositiu",
"Description[cs]": "Potlačit spořič pokud je zařízení připojeno",
"Description[da]": "Tilbagehold pauseskærmen når enheden er tilsluttet",
"Description[da]": "Forhindr pauseskærm når enheden er forbundet",
"Description[de]": "Bildschirmschoner unterbinden wenn ein Gerät angeschlossen ist",
"Description[el]": "Απαγόρευση προστασίας οθόνης όταν η συσκευή είναι σε σύνδεση",
"Description[es]": "Inhibir el salvapantallas cuando el dispositivo está conectado",
"Description[et]": "Ekraanisäästja keelamine, kui seade on ühendatud",
"Description[eu]": "Gelditu pantaila-babeslea gailua konektatuta dagoenean",
@ -49,13 +47,11 @@
"Id": "kdeconnect_screensaver_inhibit",
"License": "GPL",
"Name": "Inhibit screensaver",
"Name[ar]": "امنع حافظة الشّاشة",
"Name[ca@valencia]": "Inhibeix l'estalvi de pantalla",
"Name[ca]": "Inhibeix l'estalvi de pantalla",
"Name[cs]": "Potlačit spořič obrazovky",
"Name[da]": "Tilbagehold pauseskærm",
"Name[da]": "Forhindr pauseskærm",
"Name[de]": "Bildschirmschoner unterbinden",
"Name[el]": "Απαγόρευση προστασίας οθόνης",
"Name[es]": "Inhibir salvapantallas",
"Name[et]": "Ekraanisäästja keelamine",
"Name[eu]": "Gelditu pantaila-babeslea",

View file

@ -5,6 +5,7 @@
{
"Email": "holger.k@elberer.de",
"Name": "Holger Kaelberer",
"Name[da]": "Holger Freyther",
"Name[sr@ijekavian]": "Холгер Келберер",
"Name[sr@ijekavianlatin]": "Holger Kelberer",
"Name[sr@latin]": "Holger Kelberer",
@ -13,19 +14,16 @@
}
],
"Description": "Broadcast this computer's notifications, so they can be shown on other devices.",
"Description[ar]": "بُثّ إخطارات هذا الحاسوب، لتظهر على الأجهزة الأخرى.",
"Description[ca@valencia]": "Transmet les notificacions d'este ordinador, perquè puguen mostrar-se en altres dispositius.",
"Description[ca]": "Transmet les notificacions d'aquest ordinador, perquè puguin mostrar-se en altres dispositius.",
"Description[cs]": "Posílat upozornění tohoto počítače, takže mohou být zobrazena na jiných zařízeních.",
"Description[da]": "Udsend denne computers bekendtgørelser, så de kan vises på andre enheder.",
"Description[de]": "Die Benachrichtigungen dieses Rechners aussenden, sodass sie auf anderen Geräten angezeigt werden können.",
"Description[el]": "Μεταδώστε την ειδοποίηση αυτού του υπολογιστή, ώστε να εμφανιστεί σε άλλες συσκευές.",
"Description[es]": "Difundir las notificaciones de este equipo, para que puedan mostrarse en otros dispositivos.",
"Description[et]": "Arvuti märguannete levitamine, et neid oleks näha ka teistes seadmetes",
"Description[eu]": "Hedatu ordenagailu honen jakinarazpenak, beste gailuetan erakutsi ahal izateko",
"Description[fi]": "Lähetä tämän tietokoneen ilmoitukset, jotta ne voidaan näyttää muilla laitteilla.",
"Description[fr]": "Diffuser les notifications de cet ordinateur pour qu'elles puissent être vues par d'autres périphériques.",
"Description[gl]": "Emitir as notificacións deste computador para que se mostren noutros dispositivos.",
"Description[it]": "Trasmetti le notifiche di questo computer, affinché possano essere mostrate su altri dispositivi.",
"Description[ko]": "이 컴퓨터의 알림을 다른 장치에도 표시합니다.",
"Description[nl]": "De meldingen van deze computer rondsturen, zodat ze op andere apparaten getoond kunnen worden.",
@ -43,25 +41,22 @@
"Description[uk]": "Транслювати сповіщення з цього комп’ютера так, щоб їх було показано на інших пристроях.",
"Description[x-test]": "xxBroadcast this computer's notifications, so they can be shown on other devices.xx",
"Description[zh_CN]": "广播此计算机的通知,以被其他设备显示。",
"Description[zh_TW]": "廣播此電腦的通知,這樣可以顯示在其他裝置上。",
"Description[zh_TW]": "廣播這臺電腦的通知,這樣它們就可以在其他裝置上顯示。",
"EnabledByDefault": false,
"Icon": "preferences-desktop-notification",
"Id": "kdeconnect_sendnotifications",
"License": "GPL",
"Name": "Send notifications",
"Name[ar]": "أرسل إخطارات",
"Name[ca@valencia]": "Envia les notificacions",
"Name[ca]": "Envia les notificacions",
"Name[cs]": "Posílat oznamování",
"Name[da]": "Send bekendtgørelser",
"Name[de]": "Benachrichtigungen senden",
"Name[el]": "Αποστολή ειδοποιήσεων",
"Name[es]": "Enviar notificaciones",
"Name[et]": "Märguannete saatmine",
"Name[eu]": "Bidali jakinarazpenak",
"Name[fi]": "Lähetä ilmoituksia",
"Name[fr]": "Envoyer les notifications",
"Name[gl]": "Enviar notificacións",
"Name[it]": "Invia notifiche",
"Name[ko]": "알림 보내기",
"Name[nl]": "Stuur meldingen",

View file

@ -6,25 +6,20 @@ X-KDE-Library=kdeconnect_sendnotifications_config
X-KDE-ParentComponents=kdeconnect_sendnotifications
Name=Notification synchronization plugin settings
Name[ar]=إعدادات ملحقة مزامنة الإخطارات
Name[ast]=Axustes del complementu de sincronización d'avisos
Name[ca]=Ajustament del connector Sincronitza les notificacions
Name[ca@valencia]=Ajustament del connector Sincronitza les notificacions
Name[cs]=Nastavení modulu synchronizace upozornění
Name[da]=Indstilling af plugin til bekendtgørelsessynkronisering
Name[da]=Indstilling af plugin til synkronisering af bekendtgørelser
Name[de]=Einstellungen für Benachrichtigungsabgleich-Modul
Name[el]=Ρυθμίσεις πρόσθετου συγχρονισμού ειδοποιήσεων
Name[en_GB]=Notification synchronisation plugin settings
Name[es]=Preferencias del complemento de sincronización de notificaciones
Name[et]=Märguande sünkroonimise plugina seaditused
Name[eu]=Jakinarazpenak sinkronizatzeko pluginaren ezarpenak
Name[fi]=Ilmoitusten synkronointiliitännäisen asetukset
Name[fr]=Configuration du module externe de synchronisation des notifications
Name[gl]=Configuración do complemento de sincronización de notificacións
Name[he]=הגדרת התוסף סנכרון התראות
Name[it]=Impostazioni dell'estensione di sincronizzazione delle notifiche
Name[ko]=
Name[nl]=Instellingen van plug-in voor synchronisatie van meldingen
Name[nl]=Instellingen voor meldingen van synchronisatie plug-in
Name[nn]=Innstillingar for tillegg for synkronisering av varslingar
Name[pl]=Ustawienia wtyczki synchronizującej powiadomienia
Name[pt]=Configuração do 'plugin' de sincronização das notificações

View file

@ -10,7 +10,7 @@
<x>0</x>
<y>0</y>
<width>350</width>
<height>326</height>
<height>328</height>
</rect>
</property>
<property name="sizePolicy">
@ -25,9 +25,6 @@
<height>0</height>
</size>
</property>
<property name="windowTitle">
<string>Pause music plugin</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QGroupBox" name="groupBox_2">
@ -37,25 +34,12 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>11</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="title">
<string>General</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QCheckBox" name="check_persistent">
<property name="font">
<font>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Synchronize only notifications with a timeout value of 0?</string>
</property>
@ -157,12 +141,6 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="toolTip">
<string/>
</property>

View file

@ -15,13 +15,11 @@
}
],
"Description": "Browse the remote device filesystem using SFTP",
"Description[ar]": "تصفّح نظام ملفّات الجهاز البعيد باستخدام SFTP",
"Description[ca@valencia]": "Navega pel sistema de fitxers del dispositiu remot emprant SFTP",
"Description[ca]": "Navega pel sistema de fitxers del dispositiu remot emprant SFTP",
"Description[cs]": "Prohlížejte souborový systém zařízení pomocí SFTP",
"Description[da]": "Gennemse den eksterne enheds filsystem med SFTP",
"Description[da]": "Gennemse filsystemet på eksterne enheder med SFTP",
"Description[de]": "Browsen im Dateisystem des entfernten Geräts mit SFTP",
"Description[el]": "Περιήγηση του απομακρυσμένου συστήματος αρχείων με χρήση SFTP",
"Description[es]": "Navegar por el sistema de archivos del dispositivo remoto usando SFTP",
"Description[et]": "Oma seadme failisüsteemi sirvimine SFTP vahendusel",
"Description[eu]": "Arakatu urruneko gailuaren fitxategi-sistema SFTP erabiliz",
@ -42,7 +40,7 @@
"Description[sr@ijekavianlatin]": "Pregledanje udaljenog fajl sistema pomoću SFTPa",
"Description[sr@latin]": "Pregledanje udaljenog fajl sistema pomoću SFTPa",
"Description[sr]": "Прегледање удаљеног фајл система помоћу СФТП‑а",
"Description[sv]": "Bläddra i den andra apparatens filsystem med SFTP",
"Description[sv]": "Bläddra i fjärrenhetens filsystem med SFTP",
"Description[tr]": "Uzak aygıt dosya sistemine SFTP kullanarak göz atın",
"Description[uk]": "Перегляд файлових систем на сторонніх пристроях за допомогою SFTP",
"Description[x-test]": "xxBrowse the remote device filesystem using SFTPxx",
@ -53,13 +51,11 @@
"Id": "kdeconnect_sftp",
"License": "GPL",
"Name": "Remote filesystem browser",
"Name[ar]": "متصفّح نظام الملفّات البعيد",
"Name[ca@valencia]": "Navegador del sistema de fitxers remot",
"Name[ca]": "Navegador del sistema de fitxers remot",
"Name[cs]": "Vzdálený prohlížeč souborového systému",
"Name[da]": "Browser til eksternt filsystem",
"Name[da]": "Filbrowser til eksternt filsystem",
"Name[de]": "Datei-Browser für entferne Systeme",
"Name[el]": "Περιηγητής απομακρυσμένου συστήματος αρχείων",
"Name[es]": "Navegador de sistema de archivos remoto",
"Name[et]": "Kaug-failisüsteemi sirvija",
"Name[eu]": "Urruneko fitxategi-sistemaren arakatzailea",
@ -80,7 +76,7 @@
"Name[sr@ijekavianlatin]": "Pregledač udaljenog fajl sistema",
"Name[sr@latin]": "Pregledač udaljenog fajl sistema",
"Name[sr]": "Прегледач удаљеног фајл система",
"Name[sv]": "Extern filsystembläddrare",
"Name[sv]": "Fjärrfilsystembläddrare",
"Name[tr]": "Uzak dosya sistemi tarayıcısı",
"Name[uk]": "Перегляд віддалених файлових систем",
"Name[x-test]": "xxRemote filesystem browserxx",

View file

@ -128,6 +128,7 @@ void Mounter::onPakcageReceived(const NetworkPackage& np)
path)
<< m_mountPoint
<< QStringLiteral("-p") << np.get<QString>(QStringLiteral("port"))
<< QStringLiteral("-s") // This fixes a bug where file chunks are sent out of order and get corrupted on reception
<< QStringLiteral("-f")
<< QStringLiteral("-F") << QStringLiteral("/dev/null") //Do not use ~/.ssh/config
<< QStringLiteral("-o") << "IdentityFile=" + KdeConnectConfig::instance()->privateKeyPath()

View file

@ -13,13 +13,11 @@
}
],
"Description": "Receive and send files, URLs or plain text easily",
"Description[ar]": "استقبل الملفّات أو العناوين أو النّصوص الصّرفة وأرسلها بسهولة",
"Description[ca@valencia]": "Rep i envia fitxers, URL o text pla amb facilitat",
"Description[ca]": "Rep i envia fitxers, URL o text pla amb facilitat",
"Description[cs]": "Snadno přijímejte a posílejte soubory, URL nebo čistý text",
"Description[da]": "Modtag og send nemt filer, URL'er eller klartekst",
"Description[de]": "Empfang und Senden von Dateien, URLs oder einfachem Text",
"Description[el]": "Εύκολη λήψη και αποστολή αρχείων, URL ή απλού κειμένου",
"Description[es]": "Recibir y enviar archivos, URL o texto sin formato fácilmente",
"Description[et]": "Failide, URL-ide või lihtteksti hõlpus vastuvõtmine ja saatmine",
"Description[eu]": "Jaso eta bidali fitxategiak, URL-ak, edo testu soila erraz",
@ -51,13 +49,11 @@
"Id": "kdeconnect_share",
"License": "GPL",
"Name": "Share and receive",
"Name[ar]": "شارك واستقبل",
"Name[ca@valencia]": "Comparteix i rep",
"Name[ca]": "Comparteix i rep",
"Name[cs]": "Sdílet a přijímat",
"Name[da]": "Del og modtag",
"Name[de]": "Senden und Empfangen",
"Name[el]": "Διαμοιρασμός και λήψη",
"Name[es]": "Compartir y recibir",
"Name[et]": "Jagamine ja vastuvõtmine",
"Name[eu]": "Partekatu eta jaso",

View file

@ -6,8 +6,6 @@ X-KDE-Library=kdeconnect_share_config
X-KDE-ParentComponents=kdeconnect_share
Name=Share plugin settings
Name[ar]=إعدادات ملحقة المشاركة
Name[ast]=Axustes del complementu de compartición
Name[bg]=Настройки на приставката за споделяне
Name[bs]=Podijeli postavke dodatka
Name[ca]=Ajustaments del connector Compartició
@ -15,7 +13,6 @@ Name[ca@valencia]=Ajustaments del connector Compartició
Name[cs]=Nastavení modulu sdílení
Name[da]=Indstilling af deling-plugin
Name[de]=Modul-Einstellungen für Veröffentlichung
Name[el]=Ρυθμίσεις προσθέτου κοινής χρήσης
Name[en_GB]=Share plugin settings
Name[es]=Ajustes del complemento para compartir
Name[et]=Jagamisplugina seadistused
@ -23,7 +20,6 @@ Name[eu]=Partekatu pluginaren ezarpenak
Name[fi]=Jakoliitännäisen asetukset
Name[fr]=Paramètres du module de partage
Name[gl]=Configuración do complemento de compartir
Name[he]=שתף את הגדרות התוספים
Name[hu]=Megosztás bővítmény beállításai
Name[it]=Impostazioni estensione Condivisione
Name[ko]=

View file

@ -87,13 +87,14 @@ bool SharePlugin::receivePackage(const NetworkPackage& np)
qCDebug(KDECONNECT_PLUGIN_SHARE) << "File transfer";
if (np.hasPayload()) {
//qCDebug(KDECONNECT_PLUGIN_SHARE) << "receiving file";
const QString filename = np.get<QString>(QStringLiteral("filename"), QString::number(QDateTime::currentMSecsSinceEpoch()));
const QUrl dir = destinationDir().adjusted(QUrl::StripTrailingSlash);
QUrl destination(dir.toString() + '/' + filename);
QUrl destination(dir);
destination.setPath(dir.path() + '/' + filename, QUrl::DecodedMode);
if (destination.isLocalFile() && QFile::exists(destination.toLocalFile())) {
destination = QUrl(dir.toString() + '/' + KIO::suggestName(dir, filename));
destination.setPath(dir.path() + '/' + KIO::suggestName(dir, filename), QUrl::DecodedMode);
}
// qCDebug(KDECONNECT_PLUGIN_SHARE) << "receiving file" << filename << "in" << dir << "into" << destination;
FileTransferJob* job = np.createPayloadTransferJob(destination);
job->setOriginName(device()->name() + ": " + filename);
@ -115,29 +116,30 @@ bool SharePlugin::receivePackage(const NetworkPackage& np)
tmpFile.write(text.toUtf8());
tmpFile.close();
const QUrl url = QUrl::fromLocalFile(tmpFile.fileName());
Q_EMIT shareReceived(url);
QDesktopServices::openUrl(url);
const QString fileName = tmpFile.fileName();
Q_EMIT shareReceived(fileName);
QDesktopServices::openUrl(QUrl::fromLocalFile(fileName));
}
} else if (np.has(QStringLiteral("url"))) {
QUrl url = QUrl::fromEncoded(np.get<QByteArray>(QStringLiteral("url")));
QDesktopServices::openUrl(url);
Q_EMIT shareReceived(url);
Q_EMIT shareReceived(url.toString());
} else {
qCDebug(KDECONNECT_PLUGIN_SHARE) << "Error: Nothing attached!";
}
return true;
}
void SharePlugin::finished(KJob* job)
{
FileTransferJob* ftjob = qobject_cast<FileTransferJob*>(job);
if (ftjob)
Q_EMIT shareReceived(ftjob->destination());
qCDebug(KDECONNECT_PLUGIN_SHARE) << "File transfer finished. Success:" << (!job->error()) << (ftjob ? ftjob->destination() : QUrl());
if (ftjob && !job->error()) {
Q_EMIT shareReceived(ftjob->destination().toString());
qCDebug(KDECONNECT_PLUGIN_SHARE) << "File transfer finished." << ftjob->destination();
} else {
qCDebug(KDECONNECT_PLUGIN_SHARE) << "File transfer failed." << (ftjob ? ftjob->destination() : QUrl());
}
}
void SharePlugin::openDestinationFolder()

View file

@ -49,7 +49,7 @@ private Q_SLOTS:
void openDestinationFolder();
Q_SIGNALS:
void shareReceived(const QUrl& url);
void shareReceived(const QString& url);
private:
void shareUrl(const QUrl& url);

View file

@ -1,12 +1,15 @@
find_package(KF5 REQUIRED COMPONENTS Notifications)
include_directories(${CMAKE_BINARY_DIR})
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../notifications/) # needed for the sendreplydialog
kdeconnect_add_plugin(kdeconnect_telephony JSON kdeconnect_telephony.json SOURCES telephonyplugin.cpp sendsmsdialog.cpp)
ki18n_wrap_ui(kdeconnect_telephony_SRCS ../notifications/sendreplydialog.ui)
kdeconnect_add_plugin(kdeconnect_telephony JSON kdeconnect_telephony.json SOURCES telephonyplugin.cpp ../notifications/sendreplydialog.cpp ${kdeconnect_telephony_SRCS})
target_link_libraries(kdeconnect_telephony
kdeconnectcore
KF5::I18n
KF5::Notifications
Qt5::DBus
Qt5::Widgets
)

View file

@ -13,19 +13,16 @@
}
],
"Description": "Show notifications for calls and SMS",
"Description[ar]": "أظهر إخطارات المكالمات والرّسائل",
"Description[ca@valencia]": "Mostra les notificacions de les trucades i els SMS",
"Description[ca]": "Mostra les notificacions de les trucades i els SMS",
"Description[cs]": "Zobrazit upozornění pro telefonáty a SMS",
"Description[da]": "Vis bekendtgørelser for opkald og sms",
"Description[da]": "Vis bekendtgørelser for opkald og SMS'er",
"Description[de]": "Benachrichtigungen für Anrufe und SMS anzeigen",
"Description[el]": "Εμφάνιση ειδοποιήσεων για κλήσεις και SMS",
"Description[es]": "Mostrar notificaciones de llamadas y SMS",
"Description[et]": "Kõnede ja SMS-ide märguannete näitamine",
"Description[eu]": "Erakutsi deien eta SMS mezuen jakinarazpenak",
"Description[fi]": "Näytä puhelujen ja tekstiviestien ilmoitukset",
"Description[fr]": "Affichez les notifications pour les appels et les SMS",
"Description[gl]": "Mostrar notificacións de chamadas e mensaxes SMS.",
"Description[it]": "Mostra notifiche per le chiamate e per gli SMS",
"Description[ko]": "통화와 SMS 알림 표시",
"Description[nl]": "Meldingen tonen van oproepen en SMSjes",
@ -33,6 +30,7 @@
"Description[pl]": "Powiadamiaj o dzwonieniu i esemesach",
"Description[pt]": "Mostrar notificações para as chamadas e SMS",
"Description[ru]": "Показ уведомлений для звонков и SMS",
"Description[sk]": "Zobraziť oznámenia pre hovory a SMS",
"Description[sr@ijekavian]": "Приказује обавештења за позиве и СМС",
"Description[sr@ijekavianlatin]": "Prikazuje obaveštenja za pozive i SMS",
"Description[sr@latin]": "Prikazuje obaveštenja za pozive i SMS",
@ -48,13 +46,11 @@
"Id": "kdeconnect_telephony",
"License": "GPL",
"Name": "Telephony integration",
"Name[ar]": "تكامل الهاتف",
"Name[ca@valencia]": "Integració amb la telefonia",
"Name[ca]": "Integració amb la telefonia",
"Name[cs]": "Integrace telefonu",
"Name[da]": "Integration af telefoni",
"Name[da]": "Telefoniintegration",
"Name[de]": "Telefon-Integration",
"Name[el]": "Ενσωμάτωση τηλεφωνίας",
"Name[es]": "Integración con el teléfono",
"Name[et]": "Telefoniga lõimimine",
"Name[eu]": "Telefoniarekin integrazioa",

View file

@ -1,64 +0,0 @@
/**
* Copyright 2015 Albert Vaca <albertvaka@gmail.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License or (at your option) version 3 or any later version
* accepted by the membership of KDE e.V. (or its successor approved
* by the membership of KDE e.V.), which shall act as a proxy
* defined in Section 14 of version 3 of the license.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "sendsmsdialog.h"
#include <QPushButton>
#include <QTextEdit>
#include <QLineEdit>
#include <QBoxLayout>
#include <KLocalizedString>
SendSmsDialog::SendSmsDialog(const QString& originalMessage, const QString& phoneNumber, const QString& contactName, QWidget* parent)
: QDialog(parent)
, m_phoneNumber(phoneNumber)
{
QVBoxLayout* layout = new QVBoxLayout;
QTextEdit* textView = new QTextEdit(this);
textView->setReadOnly(true);
textView->setText(contactName + ": \n" + originalMessage);
layout->addWidget(textView);
m_textEdit = new QTextEdit(this);
layout->addWidget(m_textEdit);
QPushButton* sendButton = new QPushButton(i18n("Send"), this);
connect(sendButton, &QAbstractButton::clicked, this, &SendSmsDialog::sendButtonClicked);
layout->addWidget(sendButton);
setLayout(layout);
setWindowTitle(contactName);
setWindowIcon(QIcon::fromTheme(QStringLiteral("kdeconnect")));
setAttribute(Qt::WA_DeleteOnClose);
}
void SendSmsDialog::sendButtonClicked()
{
Q_EMIT sendSms(m_phoneNumber, m_textEdit->toPlainText());
close();
}
QSize SendSmsDialog::sizeHint() const
{
return QSize(512, 64);
}

View file

@ -1,50 +0,0 @@
/**
* Copyright 2015 Albert Vaca <albertvaka@gmail.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License or (at your option) version 3 or any later version
* accepted by the membership of KDE e.V. (or its successor approved
* by the membership of KDE e.V.), which shall act as a proxy
* defined in Section 14 of version 3 of the license.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef SENDSMSDIALOG_H
#define SENDSMSDIALOG_H
#include <QDialog>
#include <QSize>
class QTextEdit;
class QLineEdit;
class QPushButton;
class SendSmsDialog : public QDialog
{
Q_OBJECT
public:
explicit SendSmsDialog(const QString& originalMessage, const QString& phoneNumber, const QString& contactName, QWidget* parent = nullptr);
QSize sizeHint() const override;
private Q_SLOTS:
void sendButtonClicked();
Q_SIGNALS:
void sendSms(const QString& phoneNumber, const QString& messageBody);
private:
QString m_phoneNumber;
QTextEdit* m_textEdit;
};
#endif

View file

@ -20,7 +20,7 @@
#include "telephonyplugin.h"
#include "sendsmsdialog.h"
#include "sendreplydialog.h"
#include <KLocalizedString>
#include <QIcon>
@ -156,9 +156,10 @@ void TelephonyPlugin::showSendSmsDialog()
QString phoneNumber = sender()->property("phoneNumber").toString();
QString contactName = sender()->property("contactName").toString();
QString originalMessage = sender()->property("originalMessage").toString();
SendSmsDialog* dialog = new SendSmsDialog(originalMessage, phoneNumber, contactName);
connect(dialog, &SendSmsDialog::sendSms, this, &TelephonyPlugin::sendSms);
SendReplyDialog* dialog = new SendReplyDialog(originalMessage, phoneNumber, contactName);
connect(dialog, &SendReplyDialog::sendReply, this, &TelephonyPlugin::sendSms);
dialog->show();
dialog->raise();
}
QString TelephonyPlugin::dbusPath() const

View file

@ -76,7 +76,7 @@ class TestSendFile : public QObject
QVERIFY(plugin);
plugin->metaObject()->invokeMethod(plugin, "shareUrl", Q_ARG(QString, QUrl::fromLocalFile(temp.fileName()).toString()));
QSignalSpy spy(plugin, SIGNAL(shareReceived(QUrl)));
QSignalSpy spy(plugin, SIGNAL(shareReceived(QString)));
QVERIFY(spy.wait(2000));
QVariantList args = spy.takeFirst();

View file

@ -4,15 +4,14 @@ Name[ca]=Gestor d'URL de telèfons del KDE Connect
Name[ca@valencia]=Gestor d'URL de telèfons del KDE Connect
Name[cs]=Nástroj pro práci s URL telefonu v KDE Connect
Name[da]=Telefon-URL-håndtering til KDE Connect
Name[es]=Controlador de URL de teléfonos de KDE Connect
Name[eu]=KDE Connect-en URL-kudeatzailea
Name[fr]=Gestionnaire d'URL téléphoniques de KDE Connect
Name[gl]=Manexador de URL de teléfono de KDE Connect
Name[it]=Gestore URL del telefono di KDE Connect
Name[nl]=URL behandelaar van KDE-Connect-telefoon
Name[nl]=KDE-Connect behandelaar van telefoon-URL
Name[nn]=Telefon-URL-handsamar for KDE Connect
Name[pl]=KDE Connect - obsługa URL telefonu
Name[pt]=Tratamento de URL's Telefónicos do KDE Connect
Name[pt]=Tratamento de URL's no Telefone do KDE Connect
Name[sk]=Spracovač KDE Connect Phone URL
Name[sr]=КДЕконекцијин руковалац телефонским УРЛовима
Name[sr@ijekavian]=КДЕконекцијин руковалац телефонским УРЛовима
Name[sr@ijekavianlatin]=KDEkonekcijin rukovalac telefonskim URLovima