diff options
author | Kevin Smith <git@kismith.co.uk> | 2010-09-03 15:07:47 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2010-09-03 19:06:29 (GMT) |
commit | a0185934b0c929622c5526b84235b86cd44aad1d (patch) | |
tree | 2b377a5e8754c35e1a40fe7405dd75804e66fd73 /Swift/QtUI/QtChatView.cpp | |
parent | fde15d66a75334b23ca8bbd56b44e33893c813c4 (diff) | |
download | swift-a0185934b0c929622c5526b84235b86cd44aad1d.zip swift-a0185934b0c929622c5526b84235b86cd44aad1d.tar.bz2 |
XEP-0198 Ack support in the UI
Resolves: #7
Diffstat (limited to 'Swift/QtUI/QtChatView.cpp')
-rw-r--r-- | Swift/QtUI/QtChatView.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Swift/QtUI/QtChatView.cpp b/Swift/QtUI/QtChatView.cpp index d48365b..145371f 100644 --- a/Swift/QtUI/QtChatView.cpp +++ b/Swift/QtUI/QtChatView.cpp @@ -129,6 +129,15 @@ void QtChatView::copySelectionToClipboard() { } } +void QtChatView::setAckXML(const QString& id, const QString& xml) { + QWebElement message = document_.findFirst("#" + id); + /* Deliberately not asserting here, so that when we start expiring old messages it won't hit us */ + if (message.isNull()) return; + QWebElement ackElement = message.findFirst("span.swift_ack"); + assert(!ackElement.isNull()); + ackElement.setInnerXml(xml); +} + bool QtChatView::isScrolledToBottom() const { return webPage_->mainFrame()->scrollBarValue(Qt::Vertical) == webPage_->mainFrame()->scrollBarMaximum(Qt::Vertical); } |