┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/panels
diff options
context:
space:
mode:
authorThomas Surrel <[email protected]>2018-10-05 22:45:50 +0200
committerThomas Surrel <[email protected]>2018-10-07 15:31:49 +0200
commit467df92fb9f2dc5f54162feb9149b4636bac43e7 (patch)
tree02a6809be419b834f5a45a31dc7c3462ab677e4e /src/panels
parent3b5c5543aa42bba18085108b353aeda32a2e6078 (diff)
Add 'Mount' option to context menu of unmounted device in Places
Summary: This is only a proposal but: 1/ it the sysmetric of the Unmount entry in the context menu of mounted devices 2/ I have to admit it took me a very long time to discover (by accident) that you can just (left-)click on a unmounted device to get it mounted automatically. I might not be the only feeling that you should be able to mount a device from the context menu ... Twin of D15988 in Kio while dolphin is not based on the kio code for Places. {F6306516} Reviewers: #dolphin, #vdg, ngraham, elvisangelaccio Reviewed By: #dolphin, #vdg, ngraham, elvisangelaccio Subscribers: ngraham, acrouthamel, kfm-devel Tags: #dolphin Differential Revision: https://phabricator.kde.org/D15974
Diffstat (limited to 'src/panels')
-rw-r--r--src/panels/places/placespanel.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/panels/places/placespanel.cpp b/src/panels/places/placespanel.cpp
index 2829083e5..8d7f29384 100644
--- a/src/panels/places/placespanel.cpp
+++ b/src/panels/places/placespanel.cpp
@@ -169,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"));
@@ -185,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 {
@@ -243,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) {