void QMirClientClipboard::requestDBusClipboardContents()
{
    if (!mDBusSetupDone) {
        setupDBus();
    }

    if (!mPendingGetContentsCall.isNull())
        return;

    QDBusPendingCall pendingCall = mDBusClipboard->asyncCall(QStringLiteral("GetContents"));

    mPendingGetContentsCall = new QDBusPendingCallWatcher(pendingCall, this);

    QObject::connect(mPendingGetContentsCall.data(), &QDBusPendingCallWatcher::finished,
                     this, &QMirClientClipboard::onDBusClipboardGetContentsFinished);
}
Beispiel #2
0
DBusSender::DBusSender(const QString &pathBase,
					   const QString &objBase,
					   const QString &senderName,
					   const QString &receiverName,
					   QWidget *parent) :
	QDialog(parent),
	m_pathNameBase(pathBase),
	m_objNameBase(objBase),
	m_senderName(senderName),
	m_receiverName(receiverName)
{
	setupUi();

	setupDBus();

	createInterface();
	connect(&m_sender, SIGNAL(returnPressed()), this, SLOT(sendMessage()));

	setWindowTitle(senderName);
}
void QMirClientClipboard::setDBusClipboardContents(const QByteArray &clipboardContents)
{
    if (!mDBusSetupDone) {
        setupDBus();
    }

    if (!mPendingSetContentsCall.isNull()) {
        // Ignore any previous set call as we are going to overwrite it anyway
        QObject::disconnect(mPendingSetContentsCall.data(), 0, this, 0);
        mUpdatesDisabled = true;
        mPendingSetContentsCall->waitForFinished();
        mUpdatesDisabled = false;
        delete mPendingSetContentsCall.data();
    }

    QDBusPendingCall pendingCall = mDBusClipboard->asyncCall(QStringLiteral("SetContents"), clipboardContents);

    mPendingSetContentsCall = new QDBusPendingCallWatcher(pendingCall, this);

    QObject::connect(mPendingSetContentsCall.data(), &QDBusPendingCallWatcher::finished,
                     this, &QMirClientClipboard::onDBusClipboardSetContentsFinished);
}