diff -ur kdebase-workspace-4.0.72/plasma/containments/desktop/desktop.cpp kdebase-workspace-4.0.72-plasma-konsole/plasma/containments/desktop/desktop.cpp
--- kdebase-workspace-4.0.72/plasma/containments/desktop/desktop.cpp 2008-04-30 15:58:29.000000000 +0200
+++ kdebase-workspace-4.0.72-plasma-konsole/plasma/containments/desktop/desktop.cpp 2008-05-07 00:45:34.000000000 +0200
@@ -39,6 +39,7 @@
#include <KStandardDirs>
#include <KSvgRenderer>
#include <KWindowSystem>
+#include <KProcess>
#include "plasma/corona.h"
#include "plasma/appletbrowser.h"
@@ -62,6 +63,7 @@
m_lockDesktopAction(0),
m_appletBrowserAction(0),
m_addPanelAction(0),
+ m_runKonsoleAction(0),
m_runCommandAction(0),
m_lockScreenAction(0),
m_logoutAction(0),
@@ -341,6 +343,13 @@
}
}
+void DefaultDesktop::runKonsole()
+{
+ KProcess proc;
+ proc << KStandardDirs::locate("exe", "konsole");
+ proc.execute();
+}
+
void DefaultDesktop::lockScreen()
{
if (!KAuthorized::authorizeKAction("lock_screen")) {
@@ -368,6 +377,10 @@
connect(m_addPanelAction, SIGNAL(triggered(bool)), this, SLOT(addPanel()));
m_addPanelAction->setIcon(KIcon("list-add"));
+ m_runKonsoleAction = new QAction(i18n("Konsole"), this);
+ connect(m_runKonsoleAction, SIGNAL(triggered(bool)), this, SLOT(runKonsole()));
+ m_runKonsoleAction->setIcon(KIcon("terminal"));
+
m_runCommandAction = new QAction(i18n("Run Command..."), this);
connect(m_runCommandAction, SIGNAL(triggered(bool)), this, SLOT(runCommand()));
m_runCommandAction->setIcon(KIcon("system-run"));
@@ -398,6 +411,8 @@
QList<QAction*> actions;
+ actions.append(m_runKonsoleAction);
+
if (KAuthorized::authorizeKAction("run_command")) {
actions.append(m_runCommandAction);
}
diff -ur kdebase-workspace-4.0.72/plasma/containments/desktop/desktop.h kdebase-workspace-4.0.72-plasma-konsole/plasma/containments/desktop/desktop.h
--- kdebase-workspace-4.0.72/plasma/containments/desktop/desktop.h 2008-04-30 15:58:29.000000000 +0200
+++ kdebase-workspace-4.0.72-plasma-konsole/plasma/containments/desktop/desktop.h 2008-05-07 00:44:21.000000000 +0200
@@ -84,6 +84,7 @@
const QRect& contentsRect);
protected Q_SLOTS:
+ void runKonsole();
void runCommand();
void configure();
void applyConfig();
@@ -106,6 +107,7 @@
QAction *m_lockDesktopAction;
QAction *m_appletBrowserAction;
QAction *m_addPanelAction;
+ QAction *m_runKonsoleAction;
QAction *m_runCommandAction;
QAction *m_setupDesktopAction;
QAction *m_lockScreenAction;