From b664a5a142f458b8d6b3ccc846df3c0676beb3aa Mon Sep 17 00:00:00 2001 From: Daniel Albers Date: Mon, 27 Jun 2016 22:47:21 -0400 Subject: [PATCH] Remove displayed brackets around sender nicks Remove brackets around nick names for the display role. Add brackets around sender when copying ChatLines. Only apply when Message::Type == Plain, though. Remove brackets from default timestamp setting --- src/qtui/chatmonitorfilter.cpp | 2 +- src/qtui/chatscene.cpp | 15 ++++++++++++--- src/qtui/chatviewsettings.h | 2 +- src/uisupport/uistyle.cpp | 2 +- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/qtui/chatmonitorfilter.cpp b/src/qtui/chatmonitorfilter.cpp index e3dbd63b..8050653c 100644 --- a/src/qtui/chatmonitorfilter.cpp +++ b/src/qtui/chatmonitorfilter.cpp @@ -123,7 +123,7 @@ QVariant ChatMonitorFilter::data(const QModelIndex &index, int role) const QString sender = MessageFilter::data(index, ChatLineModel::EditRole).toString(); fields << sender; } - return QString("<%1>").arg(fields.join(":")); + return QString("%1").arg(fields.join(" ")); } diff --git a/src/qtui/chatscene.cpp b/src/qtui/chatscene.cpp index 2f147428..8a5f7d4c 100644 --- a/src/qtui/chatscene.cpp +++ b/src/qtui/chatscene.cpp @@ -1026,9 +1026,18 @@ QString ChatScene::selection() const for (int l = start; l <= end; l++) { if (_selectionMinCol == ChatLineModel::TimestampColumn) result += _lines[l]->item(ChatLineModel::TimestampColumn)->data(MessageModel::DisplayRole).toString() + " "; - if (_selectionMinCol <= ChatLineModel::SenderColumn) - result += _lines[l]->item(ChatLineModel::SenderColumn)->data(MessageModel::DisplayRole).toString() + " "; - result += _lines[l]->item(ChatLineModel::ContentsColumn)->data(MessageModel::DisplayRole).toString() + "\n"; + if (_selectionMinCol <= ChatLineModel::SenderColumn) { + ChatItem *item = _lines[l]->item(ChatLineModel::SenderColumn); + if (item->chatLine()->msgType() == Message::Plain) { + // Copying to plain-text, re-add the sender brackets + result += QString("<%1> ").arg(item->data(MessageModel::DisplayRole) + .toString()); + } else { + result += item->data(MessageModel::DisplayRole).toString() + " "; + } + } + result += _lines[l]->item(ChatLineModel::ContentsColumn) + ->data(MessageModel::DisplayRole).toString() + "\n"; } return result; } diff --git a/src/qtui/chatviewsettings.h b/src/qtui/chatviewsettings.h index 637b23f6..fe4e383f 100644 --- a/src/qtui/chatviewsettings.h +++ b/src/qtui/chatviewsettings.h @@ -45,7 +45,7 @@ public: inline bool showWebPreview() { return localValue("ShowWebPreview", true).toBool(); } inline void enableWebPreview(bool enabled) { setLocalValue("ShowWebPreview", enabled); } - inline QString timestampFormatString() { return localValue("TimestampFormat", "[hh:mm:ss]").toString(); } + inline QString timestampFormatString() { return localValue("TimestampFormat", " hh:mm:ss").toString(); } inline void setTimestampFormatString(const QString &format) { setLocalValue("TimestampFormat", format); } inline QString webSearchUrlFormatString() { return localValue("WebSearchUrlFormat", "https://www.google.com/search?q=%s").toString(); } diff --git a/src/uisupport/uistyle.cpp b/src/uisupport/uistyle.cpp index 169f5cd3..bee1f4ba 100644 --- a/src/uisupport/uistyle.cpp +++ b/src/uisupport/uistyle.cpp @@ -813,7 +813,7 @@ QString UiStyle::StyledMessage::decoratedSender() const { switch (type()) { case Message::Plain: - return QString("<%1>").arg(plainSender()); break; + return QString("%1").arg(plainSender()); break; case Message::Notice: return QString("[%1]").arg(plainSender()); break; case Message::Action: -- 2.20.1