X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatscene.cpp;h=2f145e9a35a140c53c67874baba42e63cc20ff3b;hp=c6341ecdc85193a033bb64c38571dddc05e6b319;hb=16c9fb5606113ddbcbe4be61f8ed2b775f31055e;hpb=53c7a85fd154fa18eab6217bfd4b173307c47e5d diff --git a/src/qtui/chatscene.cpp b/src/qtui/chatscene.cpp index c6341ecd..2f145e9a 100644 --- a/src/qtui/chatscene.cpp +++ b/src/qtui/chatscene.cpp @@ -24,7 +24,10 @@ #include #include #include -#include + +#ifdef HAVE_WEBKIT +# include +#endif #include "chatitem.h" #include "chatline.h" @@ -34,6 +37,7 @@ #include "client.h" #include "clientbacklogmanager.h" #include "columnhandleitem.h" +#include "contextmenuactionprovider.h" #include "iconloader.h" #include "messagefilter.h" #include "qtui.h" @@ -586,7 +590,7 @@ void ChatScene::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) { item->addActionsToMenu(&menu, item->mapFromScene(pos)); else // no item -> default scene actions - Client::mainUi()->actionProvider()->addActions(&menu, filter(), BufferId()); + GraphicalUi::contextMenuActionProvider()->addActions(&menu, filter(), BufferId()); menu.exec(event->screenPos()); @@ -707,7 +711,12 @@ void ChatScene::selectionToClipboard(QClipboard::Mode mode) { stringToClipboard(selection(), mode); } -void ChatScene::stringToClipboard(const QString &str, QClipboard::Mode mode) { +void ChatScene::stringToClipboard(const QString &str_, QClipboard::Mode mode) { + QString str = str_; + // remove trailing linefeeds + if(str.endsWith('\n')) + str.chop(1); + switch(mode) { case QClipboard::Clipboard: QApplication::clipboard()->setText(str); @@ -865,8 +874,9 @@ void ChatScene::loadWebPreview(ChatItem *parentItem, const QString &url, const Q if(webPreview.url != url) { webPreview.url = url; // prepare to load a different URL - if(webPreview.previewItem && webPreview.previewItem->scene()) { - removeItem(webPreview.previewItem); + if(webPreview.previewItem) { + if(webPreview.previewItem->scene()) + removeItem(webPreview.previewItem); delete webPreview.previewItem; webPreview.previewItem = 0; }