Hi,

The second patch from “our” Student Furkan has landed:
Add a way to copy URLs from the Network Analyzer Panel

http://socghop.appspot.com/gci/task/show/google/gci2010/kde/t129158022937

Is it ok, like it is?


Patch can be downloaded here:
http://socghop.appspot.com/gci/work_submission/download_blob?key=AMIfv955V0zYoEkaYQwqDxUh9z9EEmQExMXT_jP0FnYLWIirppWKV__iKabENdX
2RIr7uto_tg17cadzKa16fYQqOEbSabf-BCV1pLcf9KaJUN3u5dLROi_gaYyHpTNec-YfoV9wpLaytfLd1Tu-aFgmt4bRbVlgaQ


diff --git a/src/analyzer/networkanalyzer.cpp b/src/analyzer/networkanalyzer.cpp
index c5b0883..215b95e 100644
--- a/src/analyzer/networkanalyzer.cpp
+++ b/src/analyzer/networkanalyzer.cpp
@@ -40,7 +40,11 @@
 #include <QtGui/QLabel>
 
 #include <QSignalMapper>
-
+#include <QClipboard>
+#include <KIcon>
+#include <QApplication>
+#include <KAction>
+#include <KMenu>
 
 NetworkAnalyzer::NetworkAnalyzer(QWidget *parent)
     : QWidget(parent)
@@ -63,7 +67,7 @@ NetworkAnalyzer::NetworkAnalyzer(QWidget *parent)
     lay->addWidget( _requestList );
     
     connect( _mapper, SIGNAL(mapped(QObject *)), this, SLOT(requestFinished(QObject *)) );
-
+    connect( _requestList, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuEvent(QContextMenuEvent*))) ;
     connect( _requestList, SIGNAL(itemDoubleClicked( QTreeWidgetItem*, int ) ), this, SLOT( showItemDetails( QTreeWidgetItem *) ) );
 }
 
@@ -73,6 +77,25 @@ NetworkAnalyzer::~NetworkAnalyzer()
 }
 
 
+void NetworkAnalyzer::contextMenuEvent(QContextMenuEvent* event)
+{
+    if(_requestList->topLevelItemCount()>=1)
+    {
+	KMenu menu(_requestList);
+	KAction *copy;
+	copy = new KAction(KIcon("edit-copy"),i18n("Copy URL"), this);
+	connect(copy,SIGNAL(triggered(bool)),this,SLOT(copyURL()));
+	menu.addAction(copy);
+	menu.exec(mapToGlobal(event->pos()));
+	}
+}
+
+void NetworkAnalyzer::copyURL()
+{
+    QClipboard *clipboard = QApplication::clipboard();
+    clipboard->setText(_requestList->currentItem()->text(1));
+}
+
 void NetworkAnalyzer::addRequest( QNetworkAccessManager::Operation op, const QNetworkRequest &req, QNetworkReply *reply )
 {
     // Add to list of requests
diff --git a/src/analyzer/networkanalyzer.h b/src/analyzer/networkanalyzer.h
index 9e38663..655e5b6 100644
--- a/src/analyzer/networkanalyzer.h
+++ b/src/analyzer/networkanalyzer.h
@@ -42,6 +42,7 @@
 #include <QtNetwork/QNetworkAccessManager>
 #include <QtNetwork/QNetworkReply>
 #include <QtNetwork/QNetworkRequest>
+#include <QContextMenuEvent>
 
 // Forward Declarations
 class QTreeWidgetItem;
@@ -63,6 +64,8 @@ private slots:
     void clear();
     void requestFinished( QObject *replyObject );
     void showItemDetails( QTreeWidgetItem *item );
+    void contextMenuEvent(QContextMenuEvent *event);
+    void copyURL();
 
 private:
     QMap<QNetworkReply *, QNetworkRequest> _requestMap;
_______________________________________________
rekonq mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/rekonq

Reply via email to