summaryrefslogtreecommitdiff
path: root/src/newtabpage.cpp
diff options
context:
space:
mode:
authorAndrea Diamantini <adjam7@gmail.com>2012-05-25 18:22:55 +0200
committerAndrea Diamantini <adjam7@gmail.com>2012-05-25 18:22:55 +0200
commit4e170744b831886db9b98ef1260e749df36a79af (patch)
treeade10f3898848f4b1a781bda0d859ff274da24b7 /src/newtabpage.cpp
parentAnother clean up in rekonq file:// pages (diff)
downloadrekonq-4e170744b831886db9b98ef1260e749df36a79af.tar.xz
New rekonq error page :)
Diffstat (limited to 'src/newtabpage.cpp')
-rw-r--r--src/newtabpage.cpp35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/newtabpage.cpp b/src/newtabpage.cpp
index f74e5cf1..17f43735 100644
--- a/src/newtabpage.cpp
+++ b/src/newtabpage.cpp
@@ -60,6 +60,7 @@
#include <QFile>
#include <QAction>
#include <QWebFrame>
+#include <QProcess>
NewTabPage::NewTabPage(QWebFrame *frame)
@@ -88,6 +89,40 @@ NewTabPage::NewTabPage(QWebFrame *frame)
void NewTabPage::generate(const KUrl &url)
{
// about:preview links
+ if (KUrl("about:settings").isParentOf(url))
+ {
+ if (url.fileName() == QL1S("network"))
+ {
+ QString program = QL1S("kcmshell4");
+ QStringList arguments;
+ arguments << QL1S("kcm_networkmanagement");
+ QProcess *proc = new QProcess(parent());
+ proc->start(program, arguments);
+ return;
+ }
+
+ if (url.fileName() == QL1S("proxy"))
+ {
+ QString program = QL1S("kcmshell4");
+ QStringList arguments;
+ arguments << QL1S("proxy");
+ QProcess *proc = new QProcess(parent());
+ proc->start(program, arguments);
+ return;
+ }
+
+ if (url.fileName() == QL1S("firewall"))
+ {
+ QString program = QL1S("kcmshell4");
+ QStringList arguments;
+ arguments << QL1S("kcm-ufw");
+ QProcess *proc = new QProcess(parent());
+ proc->start(program, arguments);
+ return;
+ }
+ }
+
+ // about:preview links
if (KUrl("about:preview").isParentOf(url))
{
if (url.fileName() == QL1S("add"))