diff options
author | megabigbug <megabigbug@arrakis.(none)> | 2009-12-22 17:19:34 +0100 |
---|---|---|
committer | megabigbug <megabigbug@arrakis.(none)> | 2009-12-22 17:19:34 +0100 |
commit | e440ff5b1f1d742b59a20b65d11092403ae9b6b1 (patch) | |
tree | d767cf30502cb543ed434621c36f088708135668 /src/webview.cpp | |
parent | rekonq 0.3.25 (diff) | |
download | rekonq-e440ff5b1f1d742b59a20b65d11092403ae9b6b1.tar.xz |
add options for kget in the config panel
replace kio for download
Diffstat (limited to 'src/webview.cpp')
-rw-r--r-- | src/webview.cpp | 58 |
1 files changed, 7 insertions, 51 deletions
diff --git a/src/webview.cpp b/src/webview.cpp index a6ebd08d..462adc08 100644 --- a/src/webview.cpp +++ b/src/webview.cpp @@ -101,13 +101,7 @@ void WebView::contextMenuEvent(QContextMenuEvent *event) connect(a, SIGNAL(triggered(bool)), this, SLOT(openLinkInNewWindow())); menu.addAction(a); - menu.addAction(pageAction(KWebPage::DownloadLinkToDisk)); - - a = new KAction(KIcon("kget"), i18n("Download with KGet"), this); - a->setData(result.linkUrl()); - connect(a, SIGNAL(triggered(bool)), this, SLOT(downloadLinkWithKGet())); - menu.addAction(a); - + menu.addAction(pageAction(KWebPage::DownloadLinkToDisk)); menu.addAction(pageAction(KWebPage::CopyLinkToClipboard)); menu.addSeparator(); } @@ -270,9 +264,12 @@ void WebView::contextMenuEvent(QContextMenuEvent *event) menu.addAction(mainwindow->actionByName(KStandardAction::name(KStandardAction::SaveAs))); - a = new KAction(KIcon("kget"), i18n("Download All with KGet"), this); - connect(a, SIGNAL(triggered(bool)), this, SLOT(downloadAllContentsWithKGet())); - menu.addAction(a); + if (ReKonfig::kgetList()) + { + a = new KAction(KIcon("kget"), i18n("List all links"), this); + connect(a, SIGNAL(triggered(bool)), page(), SLOT(downloadAllContentsWithKGet())); + menu.addAction(a); + } menu.addAction(mainwindow->actionByName("page_source")); @@ -390,44 +387,3 @@ void WebView::keyPressEvent(QKeyEvent *event) KWebView::keyPressEvent(event); } - -void WebView::downloadLinkWithKGet() -{ - if(!QDBusConnection::sessionBus().interface()->isServiceRegistered("org.kde.kget")) - { - KToolInvocation::kdeinitExecWait("kget"); - } - QDBusInterface kget("org.kde.kget", "/KGet", "org.kde.kget.main"); - KAction *a = qobject_cast<KAction*>(sender()); - - QString url = a->data().toUrl().toString(QUrl::RemoveFragment); - QString filename = QDir::homePath()+"/"+url.remove(0,url.lastIndexOf("/")+1); - kDebug() << filename; - kget.call("addTransfer", a->data().toUrl().toString(), filename, true); -} - - - -void WebView::downloadAllContentsWithKGet() -{ - QList<QString> contentList; - - QWebElementCollection images = page()->mainFrame()->documentElement().findAll("img"); - foreach(QWebElement img, images) - { - contentList.append(img.attribute("src")); - } - - QWebElementCollection links = page()->mainFrame()->documentElement().findAll("a"); - foreach(QWebElement link, links) - { - contentList.append(link.attribute("href")); - } - - if(!QDBusConnection::sessionBus().interface()->isServiceRegistered("org.kde.kget")) - { - KToolInvocation::kdeinitExecWait("kget"); - } - QDBusInterface kget("org.kde.kget", "/KGet", "org.kde.kget.main"); - kget.call("importLinks", QVariant(contentList)); -} |