patch-projectman-shortcuts-simple.diff

File Metadata

Author
rjvbb
Created
Feb 19 2017, 12:05 PM

patch-projectman-shortcuts-simple.diff

diff --git plugins/projectmanagerview/projectmanagerview.cpp plugins/projectmanagerview/projectmanagerview.cpp
index db9072b..dbd9e34 100644
--- plugins/projectmanagerview/projectmanagerview.cpp
+++ plugins/projectmanagerview/projectmanagerview.cpp
@@ -145,20 +145,28 @@ ProjectManagerView::ProjectManagerView( ProjectManagerViewPlugin* plugin, QWidge
bool ProjectManagerView::eventFilter(QObject* obj, QEvent* event)
{
if (obj == m_ui->projectTreeView) {
- if (event->type() == QEvent::KeyRelease) {
- QKeyEvent* keyEvent = static_cast<QKeyEvent*>(event);
- if (keyEvent->key() == Qt::Key_Delete && keyEvent->modifiers() == Qt::NoModifier) {
- m_plugin->removeItems(selectedItems());
- return true;
- } else if (keyEvent->key() == Qt::Key_F2 && keyEvent->modifiers() == Qt::NoModifier) {
- m_plugin->renameItems(selectedItems());
- return true;
- } else if (keyEvent->key() == Qt::Key_C && keyEvent->modifiers() == Qt::ControlModifier) {
- m_plugin->copyFromContextMenu();
- return true;
- } else if (keyEvent->key() == Qt::Key_V && keyEvent->modifiers() == Qt::ControlModifier) {
- m_plugin->pasteFromContextMenu();
- return true;
+ switch (event->type()) {
+ case QEvent::KeyRelease: {
+ QKeyEvent* keyEvent = static_cast<QKeyEvent*>(event);
+ if (keyEvent->key() == Qt:: Key_Backspace && keyEvent->modifiers() == Qt::ControlModifier) {
+ m_plugin->removeItems(selectedItems());
+ return true;
+ }
+ break;
+ }
+ case QEvent::KeyPress: {
+ QKeyEvent* keyEvent = static_cast<QKeyEvent*>(event);
+ if (keyEvent->key() == Qt::Key_F2 && keyEvent->modifiers() == Qt::NoModifier) {
+ m_plugin->renameItems(selectedItems());
+ return true;
+ } else if (keyEvent->key() == Qt::Key_C && keyEvent->modifiers() == Qt::ControlModifier) {
+ m_plugin->copyFromContextMenu();
+ return true;
+ } else if (keyEvent->key() == Qt::Key_V && keyEvent->modifiers() == Qt::ControlModifier) {
+ m_plugin->pasteFromContextMenu();
+ return true;
+ }
+ break;
}
}
}