#include <QApplication>
#include <QClipboard>
+#include <QDesktopServices>
#include <QDrag>
#include <QGraphicsSceneMouseEvent>
#include <QMenu>
#include <QMenuBar>
#include <QMimeData>
#include <QPersistentModelIndex>
+#include <QUrl>
#ifdef HAVE_KDE
# include <KMenuBar>
QAction *act = new Action(SmallIcon("edit-copy"), tr("Copy Selection"), &menu, this,
SLOT(selectionToClipboard()), QKeySequence::Copy);
menu.insertAction(sep, act);
+
+ QString searchSelectionText = selection();
+ if (searchSelectionText.length() > _webSearchSelectionTextMaxVisible)
+ searchSelectionText = searchSelectionText.left(_webSearchSelectionTextMaxVisible).append(QString::fromUtf8("…"));
+ searchSelectionText = tr("Search '%1'").arg(searchSelectionText);
+
+ menu.addAction(SmallIcon("edit-find"), searchSelectionText, this, SLOT(webSearchOnSelection()));
}
if (QtUi::mainWindow()->menuBar()->isHidden())
}
+/******** *************************************************************************************/
+
+void ChatScene::webSearchOnSelection()
+{
+ if (!hasSelection())
+ return;
+
+ ChatViewSettings settings;
+ QString webSearchBaseUrl = settings.webSearchUrlFormatString();
+ QString webSearchUrl = webSearchBaseUrl.replace(QString("%s"), selection());
+ QUrl url = QUrl::fromUserInput(webSearchUrl);
+ QDesktopServices::openUrl(url);
+}
+
+
/******** *************************************************************************************/
void ChatScene::requestBacklog()