[SCM] ktp-text-ui packaging branch, master, updated. debian/15.12.1-1-1918-gdf4b0ec
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:19:31 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-text-ui.git;a=commitdiff;h=3853959
The following commit has been merged in the master branch:
commit 3853959a1a5530135e36fa383e9ea8283df30f71
Author: Francesco Nwokeka <francesco.nwokeka at gmail.com>
Date: Sat Jul 2 12:26:01 2011 +0200
Fix group chat crash + debug info for deliveryReport
fixed crash on group chat when joining jabber chatroom.
Added also information telepathy recieves from deliveryReport.
REVIEW: 101822
Reviewed By: David Edmundson
---
app/main.cpp | 1 +
lib/chat-widget.cpp | 99 ++++++++++++++++++++++++++++++++++++++---------------
2 files changed, 73 insertions(+), 27 deletions(-)
diff --git a/app/main.cpp b/app/main.cpp
index 4f47e18..df0b4f7 100644
--- a/app/main.cpp
+++ b/app/main.cpp
@@ -37,6 +37,7 @@ int main(int argc, char *argv[])
"0.1");
aboutData.addAuthor(ki18n("David Edmundson"), ki18n("Developer"), "david at davidedmundson.co.uk");
aboutData.addAuthor(ki18n("Dominik Schmidt"), ki18n("Developer"), "kde at dominik-schmidt.de");
+ aboutData.addAuthor(ki18n("Francesco Nwokeka"), ki18n("Developer"), "francesco.nwokeka at gmail.com");
aboutData.setProductName("telepathy/text-chat-ui"); //set the correct name for bug reporting
KCmdLineArgs::init(argc, argv, &aboutData);
diff --git a/lib/chat-widget.cpp b/lib/chat-widget.cpp
index d427ac1..a418af4 100644
--- a/lib/chat-widget.cpp
+++ b/lib/chat-widget.cpp
@@ -131,7 +131,7 @@ ChatWidget::ChatWidget(const Tp::TextChannelPtr & channel, const Tp::AccountPtr
d->chatviewlInitialised = false;
d->showFormatToolbarAction = new QAction(i18n("Show format options"), this);
- d->isGroupChat = false;
+ d->isGroupChat = channel->isConference();
d->ui.setupUi(this);
d->ui.formatToolbar->show();
@@ -475,34 +475,79 @@ bool ChatWidget::isOnTop() const
void ChatWidget::handleIncomingMessage(const Tp::ReceivedMessage &message)
{
kDebug() << title() << message.text();
- if (d->chatviewlInitialised) {
- AdiumThemeContentInfo messageInfo(AdiumThemeMessageInfo::RemoteToLocal);
-
- //debug the message parts (looking for HTML etc)
-// foreach(Tp::MessagePart part, message.parts())
-// {
-// qDebug() << "***";
-// foreach(QString key, part.keys())
-// {
-// qDebug() << key << part.value(key).variant();
-// }
-// }
-// turns out we have no HTML, because no CM supports it yet
-
- messageInfo.setMessage(message.text());
- messageInfo.setTime(message.received());
- messageInfo.setUserIconPath(message.sender()->avatarData().fileName);
- messageInfo.setSenderDisplayName(message.sender()->alias());
- messageInfo.setSenderScreenName(message.sender()->id());
-
- d->ui.chatArea->addContentMessage(messageInfo);
- d->channel->acknowledge(QList<Tp::ReceivedMessage>() << message);
-
- if(!isOnTop()) {
- incrementUnreadMessageCount();
+
+ if (message.isDeliveryReport()) {
+ ///TODO what to do with this info? For now just output to cli
+ // we don't need to show this in chat
+ Tp::ReceivedMessage::DeliveryDetails reportDetails = message.deliveryDetails();
+
+ switch (reportDetails.status()) {
+ case (Tp::DeliveryStatusAccepted):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusAccepted";
+ break;
+ case (Tp::DeliveryStatusDeleted):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusDeleted";
+ break;
+ case (Tp::DeliveryStatusDelivered):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusDelivered";
+ break;
+ case (Tp::DeliveryStatusPermanentlyFailed):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusPermanentlyFailed";
+ break;
+ case (Tp::DeliveryStatusRead):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusRead";
+ break;
+ case (Tp::DeliveryStatusTemporarilyFailed):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusTemporarilyFailed";
+ break;
+ case (Tp::DeliveryStatusUnknown):
+ kDebug() << "ChatWidget::handleIncomingMessage DeliveryStatusUnknown";
+ break;
+ }
+
+ if (reportDetails.isError()) {
+ kDebug() << "ChatWidget::handleIncomingMessage ERROR: " << reportDetails.error();
+ kDebug() << "ChatWidget::handleIncomingMessage DBUS ERROR: " << reportDetails.dbusError();
}
- Q_EMIT messageReceived();
+ if (reportDetails.hasDebugMessage()) {
+ kDebug() << "ChatWidget::handleIncomingMessage DEBUG MESSAGE: " << reportDetails.debugMessage();
+ }
+ } else {
+ if (d->chatviewlInitialised) {
+ AdiumThemeContentInfo messageInfo(AdiumThemeMessageInfo::RemoteToLocal);
+
+ //debug the message parts (looking for HTML etc)
+ // foreach(Tp::MessagePart part, message.parts())
+ // {
+ // qDebug() << "***";
+ // foreach(QString key, part.keys())
+ // {
+ // qDebug() << key << part.value(key).variant();
+ // }
+ // }
+ // turns out we have no HTML, because no CM supports it yet
+ messageInfo.setMessage(message.text());
+ messageInfo.setTime(message.received());
+
+ if (message.sender() == 0) {
+ // just need this info
+ messageInfo.setSenderDisplayName(message.senderNickname());
+ } else {
+ messageInfo.setUserIconPath(message.sender()->avatarData().fileName);
+ messageInfo.setSenderDisplayName(message.sender()->alias());
+ messageInfo.setSenderScreenName(message.sender()->id());
+ }
+
+ d->ui.chatArea->addContentMessage(messageInfo);
+ d->channel->acknowledge(QList<Tp::ReceivedMessage>() << message);
+
+ if (!isOnTop()) {
+ incrementUnreadMessageCount();
+ }
+
+ Q_EMIT messageReceived();
+ }
}
//if the window isn't ready, we don't acknowledge the mesage. We process them as soon as we are ready.
--
ktp-text-ui packaging
More information about the pkg-kde-commits
mailing list