diff options
Diffstat (limited to 'src/panels/places/placespanel.cpp')
| -rw-r--r-- | src/panels/places/placespanel.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/panels/places/placespanel.cpp b/src/panels/places/placespanel.cpp index 00d8735c3..8d7f29384 100644 --- a/src/panels/places/placespanel.cpp +++ b/src/panels/places/placespanel.cpp @@ -38,22 +38,17 @@ #include "trash/dolphintrash.h" #include "views/draganddrophelper.h" -#include <KDirNotify> -#include <KFileItem> #include <KFilePlacesModel> #include <KIO/DropJob> #include <KIO/EmptyTrashJob> #include <KIO/Job> -#include <KIO/JobUiDelegate> #include <KIconLoader> -#include <KJobWidgets> #include <KLocalizedString> -#include <KMessageBox> -#include <KNotification> #include <QGraphicsSceneDragDropEvent> #include <QIcon> #include <QMenu> +#include <QMimeData> #include <QVBoxLayout> PlacesPanel::PlacesPanel(QWidget* parent) : @@ -174,6 +169,7 @@ void PlacesPanel::slotItemContextMenuRequested(int index, const QPointF& pos) QAction* editAction = nullptr; QAction* teardownAction = nullptr; QAction* ejectAction = nullptr; + QAction* mountAction = nullptr; const bool isDevice = !item->udi().isEmpty(); const bool isTrash = (item->url().scheme() == QLatin1String("trash")); @@ -190,7 +186,11 @@ void PlacesPanel::slotItemContextMenuRequested(int index, const QPointF& pos) menu.addAction(teardownAction); } - if (teardownAction || ejectAction) { + if (item->storageSetupNeeded()) { + mountAction = menu.addAction(QIcon::fromTheme(QStringLiteral("media-mount")), i18nc("@action:inmenu", "Mount")); + } + + if (teardownAction || ejectAction || mountAction) { menu.addSeparator(); } } else { @@ -208,7 +208,7 @@ void PlacesPanel::slotItemContextMenuRequested(int index, const QPointF& pos) } if (!isDevice) { - editAction = menu.addAction(QIcon::fromTheme("document-properties"), i18nc("@item:inmenu", "Edit...")); + editAction = menu.addAction(QIcon::fromTheme("edit-entry"), i18nc("@item:inmenu", "Edit...")); } QAction* removeAction = nullptr; @@ -248,6 +248,8 @@ void PlacesPanel::slotItemContextMenuRequested(int index, const QPointF& pos) // TriggerItem does set up the storage first and then it will // emit the slotItemMiddleClicked signal, because of Qt::MiddleButton. triggerItem(index, Qt::MiddleButton); + } else if (action == mountAction) { + m_model->requestStorageSetup(index); } else if (action == teardownAction) { m_model->requestTearDown(index); } else if (action == ejectAction) { |
