diff options
| author | Thomas Surrel <[email protected]> | 2018-10-05 22:45:50 +0200 |
|---|---|---|
| committer | Thomas Surrel <[email protected]> | 2018-10-07 15:31:49 +0200 |
| commit | 467df92fb9f2dc5f54162feb9149b4636bac43e7 (patch) | |
| tree | 02a6809be419b834f5a45a31dc7c3462ab677e4e /src/panels | |
| parent | 3b5c5543aa42bba18085108b353aeda32a2e6078 (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.cpp | 9 |
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) { |
