┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2010-09-17 21:16:56 +0000
committerPeter Penz <[email protected]>2010-09-17 21:16:56 +0000
commit9a55b0d704c1301f5aef569392ca2695d8fc3204 (patch)
tree3277e5f51172acb20e699c5cd79581ea9051bf2f /src
parent304e9524b6c1f3e1582a07c34cdf42ea1c3167bb (diff)
There is no need to burden DolphinMainWindow with internals of the context-menu.
CCMAIL: [email protected] svn path=/trunk/KDE/kdebase/apps/; revision=1176513
Diffstat (limited to 'src')
-rw-r--r--src/dolphincontextmenu.cpp18
-rw-r--r--src/dolphincontextmenu.h8
-rw-r--r--src/dolphinmainwindow.cpp9
-rw-r--r--src/dolphinmainwindow.h5
4 files changed, 15 insertions, 25 deletions
diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp
index 7d195df66..8fbcbf3f5 100644
--- a/src/dolphincontextmenu.cpp
+++ b/src/dolphincontextmenu.cpp
@@ -65,7 +65,8 @@ DolphinContextMenu::DolphinContextMenu(DolphinMainWindow* parent,
m_customActions(),
m_popup(new KMenu(m_mainWindow)),
m_showDeleteCommand(false),
- m_shiftIsPressed(false)
+ m_shiftPressed(false),
+ m_keyInfo()
{
// The context menu either accesses the URLs of the selected items
// or the items itself. To increase the performance both lists are cached.
@@ -74,6 +75,12 @@ DolphinContextMenu::DolphinContextMenu(DolphinMainWindow* parent,
m_selectedItems = view->selectedItems();
m_showDeleteCommand = KGlobal::config()->group("KDE").readEntry("ShowDeleteCommand", false);
+
+ if (m_keyInfo.isKeyPressed(Qt::Key_Shift) || m_keyInfo.isKeyLatched(Qt::Key_Shift)) {
+ m_shiftPressed = true;
+ }
+
+ connect(&m_keyInfo, SIGNAL(keyPressed(Qt::Key, bool)), this, SLOT(deleteOrTrashMenuEntry(Qt::Key, bool)));
}
DolphinContextMenu::~DolphinContextMenu()
@@ -336,8 +343,8 @@ void DolphinContextMenu::insertDefaultItemActions()
collection->action("delete")->setVisible(true);
}
- if(m_shiftIsPressed) {
- deleteOrTrashMenuEntry(Qt::Key_Shift, m_shiftIsPressed);
+ if(m_shiftPressed) {
+ deleteOrTrashMenuEntry(Qt::Key_Shift, m_shiftPressed);
}
}
@@ -432,11 +439,6 @@ void DolphinContextMenu::addCustomActions()
}
}
-void DolphinContextMenu::setShiftIsPressed(bool pressed)
-{
- m_shiftIsPressed = pressed;
-}
-
void DolphinContextMenu::deleteOrTrashMenuEntry(Qt::Key key, bool pressed)
{
if(m_mainWindow->activeViewContainer()->url().isLocalFile() && !m_showDeleteCommand && key == Qt::Key_Shift) {
diff --git a/src/dolphincontextmenu.h b/src/dolphincontextmenu.h
index 052149ba3..e5620203d 100644
--- a/src/dolphincontextmenu.h
+++ b/src/dolphincontextmenu.h
@@ -73,12 +73,11 @@ public:
virtual ~DolphinContextMenu();
void setCustomActions(const QList<QAction*>& actions);
- void setShiftIsPressed(bool pressed);
/** Opens the context menu model. */
void open();
-public slots:
+private slots:
void deleteOrTrashMenuEntry(Qt::Key key, bool pressed);
private:
@@ -104,7 +103,6 @@ private:
QAction* createPasteAction();
-private:
KFileItemListProperties& capabilities();
void addServiceActions(KFileItemActions& fileItemActions);
void addVersionControlActions();
@@ -139,7 +137,9 @@ private:
QList<QAction*> m_customActions;
QScopedPointer<KMenu> m_popup;
bool m_showDeleteCommand;
- bool m_shiftIsPressed;
+ bool m_shiftPressed;
+
+ KModifierKeyInfo m_keyInfo;
};
#endif
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp
index 6f407a84a..722a90f93 100644
--- a/src/dolphinmainwindow.cpp
+++ b/src/dolphinmainwindow.cpp
@@ -114,8 +114,7 @@ DolphinMainWindow::DolphinMainWindow(int id) :
m_actionHandler(0),
m_remoteEncoding(0),
m_settingsDialog(0),
- m_lastHandleUrlStatJob(0),
- m_keyInfo(new KModifierKeyInfo)
+ m_lastHandleUrlStatJob(0)
{
setObjectName("Dolphin#");
@@ -1168,12 +1167,6 @@ void DolphinMainWindow::openContextMenu(const KFileItem& item,
const QList<QAction*>& customActions)
{
DolphinContextMenu contextMenu(this, item, url);
-
- if(m_keyInfo.isKeyPressed(Qt::Key_Shift) || m_keyInfo.isKeyLatched(Qt::Key_Shift)) {
- contextMenu.setShiftIsPressed(true);
- }
-
- connect(&m_keyInfo, SIGNAL(keyPressed(Qt::Key, bool)), &contextMenu, SLOT(deleteOrTrashMenuEntry(Qt::Key, bool)));
contextMenu.setCustomActions(customActions);
contextMenu.open();
}
diff --git a/src/dolphinmainwindow.h b/src/dolphinmainwindow.h
index cb0be1431..d76cf0d5c 100644
--- a/src/dolphinmainwindow.h
+++ b/src/dolphinmainwindow.h
@@ -31,12 +31,9 @@
#include <ksortablelist.h>
#include <kxmlguiwindow.h>
#include <kactionmenu.h>
-#include <kmodifierkeyinfo.h>
#include "views/dolphinview.h"
-#include "dolphincontextmenu.h"
-
#include <QList>
typedef KIO::FileUndoManager::CommandType CommandType;
@@ -543,8 +540,6 @@ private:
QPointer<DolphinSettingsDialog> m_settingsDialog;
KJob* m_lastHandleUrlStatJob;
-
- KModifierKeyInfo m_keyInfo;
};
inline DolphinViewContainer* DolphinMainWindow::activeViewContainer() const