OtrProxyChannel::Adaptee::Adaptee(OtrProxyChannel *pc, const QDBusConnection &dbusConnection, const Tp::TextChannelPtr &channel, const OTR::SessionContext &context, ProxyService *ps) : QObject(pc), adaptor(new Tp::Service::ChannelProxyInterfaceOTRAdaptor(dbusConnection, this, pc->dbusObject())), pc(pc), chan(channel), isConnected(false), otrSes(this, context, ps->managerOTR()), ps(ps), isGenerating(false), aboutToInit(false) { qCDebug(KTP_PROXY) << "Created OTR session for context: " << "Account id: " << context.accountId << " Account name: " << context.accountName << " recipient name: " << context.recipientName << " protocol: " << context.protocol; connect(chan.data(), SIGNAL(invalidated(Tp::DBusProxy*,const QString&,const QString&)), SLOT(onChannelClosed())); connect(&otrSes, SIGNAL(trustLevelChanged(TrustLevel)), SLOT(onTrustLevelChanged(TrustLevel))); connect(&otrSes, SIGNAL(sessionRefreshed()), SIGNAL(sessionRefreshed())); connect(&otrSes, SIGNAL(authenticationRequested(const QString&)), SIGNAL(peerAuthenticationRequested(const QString&))); connect(&otrSes, SIGNAL(authenticationInProgress()), SIGNAL(peerAuthenticationInProgress())); connect(&otrSes, SIGNAL(authenticationConcluded(bool)), SIGNAL(peerAuthenticationConcluded(bool))); connect(&otrSes, SIGNAL(authenticationAborted()), SIGNAL(peerAuthenticationAborted())); connect(&otrSes, SIGNAL(authenticationError()), SIGNAL(peerAuthenticationError())); connect(&otrSes, SIGNAL(authenticationCheated()), SIGNAL(peerAuthenticationCheated())); sender = channel->connection()->selfHandle(); }