IBus: Delete deprecated DBus APIs

IBus 1.6 will remove the deprecated DBus APIs; GetAddress() GetEngines()
These APIs are replaced with DBus GET properties.

Change-Id: I427494dd0685d523ac07366be528127d98ad7d7c
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
bb10
Takao Fujiwara 2018-01-15 12:25:05 +09:00 committed by Lars Knoll
parent 90c9370d50
commit 53cbc3c5b4
2 changed files with 73 additions and 22 deletions

View File

@ -33,10 +33,53 @@ QIBusProxy::~QIBusProxy()
{
}
#ifdef QIBUS_GET_ADDRESS
QString QIBusProxy::getAddress()
{
QDBusReply<QDBusVariant> reply = Address();
QVariant variant = reply.value().variant();
if (!variant.isValid())
return QString();
return variant.toString();
}
#endif
#ifdef QIBUS_GET_ENGINES
QList<QIBusEngineDesc> QIBusProxy::getEngines()
{
QList<QIBusEngineDesc> engines;
QDBusReply<QDBusVariant> reply = Engines();
QVariant variant = reply.value().variant();
if (!variant.isValid())
return engines;
const QDBusArgument argument = variant.value<QDBusArgument>();
qCDebug(qtQpaInputMethodsSerialize) << "QIBusProxy::getEngines()" << argument.currentSignature();
int i = 1;
argument.beginMap();
while (!argument.atEnd()) {
QDBusVariant value;
argument >> value;
if (!value.variant().isValid()) {
qWarning() << "Warning in QIBusProxy::getEngines():" << QString::asprintf("%dth variant is wrong", i);
break;
}
const QDBusArgument desc_arg = value.variant().value<QDBusArgument>();
QIBusEngineDesc desc;
desc_arg >> desc;
engines.append(desc);
++i;
}
argument.endMap();
return engines;
}
#endif
QIBusEngineDesc QIBusProxy::getGlobalEngine()
{
QIBusEngineDesc desc;
QDBusReply<QDBusVariant> reply = GetGlobalEngine();
QDBusReply<QDBusVariant> reply = GlobalEngine();
QVariant variant = reply.value().variant();
if (!variant.isValid())
return desc;

View File

@ -54,24 +54,6 @@ public Q_SLOTS: // METHODS
return asyncCallWithArgumentList(QLatin1String("Exit"), argumentList);
}
inline QDBusPendingReply<QString> GetAddress()
{
QList<QVariant> argumentList;
return asyncCallWithArgumentList(QLatin1String("GetAddress"), argumentList);
}
inline QDBusPendingReply<QVariantList> ListActiveEngines()
{
QList<QVariant> argumentList;
return asyncCallWithArgumentList(QLatin1String("ListActiveEngines"), argumentList);
}
inline QDBusPendingReply<QVariantList> ListEngines()
{
QList<QVariant> argumentList;
return asyncCallWithArgumentList(QLatin1String("ListEngines"), argumentList);
}
inline QDBusPendingReply<QDBusVariant> Ping(const QDBusVariant &data)
{
QList<QVariant> argumentList;
@ -86,19 +68,45 @@ public Q_SLOTS: // METHODS
return asyncCallWithArgumentList(QLatin1String("RegisterComponent"), argumentList);
}
inline QDBusPendingReply<QDBusVariant> GetGlobalEngine()
// Property
inline QDBusPendingCall GetProperty(const QString method)
{
if (!this->isValid() || this->service().isEmpty() || this->path().isEmpty())
return QDBusMessage::createError(this->lastError());
return QDBusPendingCall::fromError(this->lastError());
QDBusMessage msg = QDBusMessage::createMethodCall(this->service(),
this->path(),
dbusInterfaceProperties(),
QStringLiteral("Get"));
msg << this->interface() << QStringLiteral("GlobalEngine");
msg << this->interface() << method;
return this->connection().asyncCall(msg, this->timeout());
}
#ifdef QIBUS_GET_ADDRESS
inline QDBusPendingCall Address()
{
return GetProperty(QStringLiteral("Address"));
}
#endif
#ifdef QIBUS_GET_ENGINES
inline QDBusPendingCall Engines()
{
return GetProperty(QStringLiteral("Engines"));
}
#endif
inline QDBusPendingCall GlobalEngine()
{
return GetProperty(QStringLiteral("GlobalEngine"));
}
#ifdef QIBUS_GET_ADDRESS
QString getAddress();
#endif
#ifdef QIBUS_GET_ENGINES
QList<QIBusEngineDesc> getEngines();
#endif
QIBusEngineDesc getGlobalEngine();
private: