X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fchatitem.cpp;h=2ca66aa17b9d07c30256fc7e829255e6e8bb907c;hb=32dee9bed2840534e41764a6ba759d425837b8a2;hp=4855f0c168eae123c7b2a1f78985f942a6f11e75;hpb=6330f7fe3d19113cbf29944a9b6e8b503893d4a9;p=quassel.git diff --git a/src/qtui/chatitem.cpp b/src/qtui/chatitem.cpp index 4855f0c1..2ca66aa1 100644 --- a/src/qtui/chatitem.cpp +++ b/src/qtui/chatitem.cpp @@ -387,6 +387,18 @@ void SenderChatItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *op } } +void SenderChatItem::handleClick(const QPointF &pos, ChatScene::ClickMode clickMode) { + if(clickMode == ChatScene::DoubleClick) { + BufferInfo curBufInfo = Client::networkModel()->bufferInfo(data(MessageModel::BufferIdRole).value()); + QString nick = data(MessageModel::EditRole).toString(); + // check if the nick is a valid ircUser + if(!nick.isEmpty() && Client::network(curBufInfo.networkId())->ircUser(nick)) + Client::bufferModel()->switchToOrStartQuery(curBufInfo.networkId(), nick); + } + else + ChatItem::handleClick(pos, clickMode); +} + // ************************************************************ // ContentsChatItem // ************************************************************