┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dolphinmainwindow.cpp2
-rw-r--r--src/dolphinpart.rc8
-rw-r--r--src/dolphinui.rc10
-rw-r--r--src/kitemviews/private/kbaloorolesprovider.cpp7
-rw-r--r--src/kitemviews/private/kbaloorolesprovider.h1
-rw-r--r--src/views/dolphinview.cpp1
-rw-r--r--src/views/dolphinview.h6
-rw-r--r--src/views/tooltips/dolphinfilemetadatawidget.cpp4
-rw-r--r--src/views/tooltips/dolphinfilemetadatawidget.h6
-rw-r--r--src/views/tooltips/tooltipmanager.cpp2
-rw-r--r--src/views/tooltips/tooltipmanager.h7
11 files changed, 44 insertions, 10 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp
index a163ef7fd..e28e540d1 100644
--- a/src/dolphinmainwindow.cpp
+++ b/src/dolphinmainwindow.cpp
@@ -1453,6 +1453,8 @@ void DolphinMainWindow::connectViewSignals(DolphinViewContainer* container)
this, static_cast<void(DolphinMainWindow::*)()>(&DolphinMainWindow::goBack));
connect(view, &DolphinView::goForwardRequested,
this, static_cast<void(DolphinMainWindow::*)()>(&DolphinMainWindow::goForward));
+ connect(view, &DolphinView::urlActivated,
+ this, &DolphinMainWindow::handleUrl);
const KUrlNavigator* navigator = container->urlNavigator();
connect(navigator, &KUrlNavigator::urlChanged,
diff --git a/src/dolphinpart.rc b/src/dolphinpart.rc
index 725320b28..01bd60009 100644
--- a/src/dolphinpart.rc
+++ b/src/dolphinpart.rc
@@ -1,12 +1,12 @@
<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
-<kpartgui name="dolphinpart" version="11" translationDomain="dolphin">
+<kpartgui name="dolphinpart" version="12" translationDomain="dolphin">
<MenuBar>
<Menu name="edit"><text>&amp;Edit</text>
<Action name="new_menu"/>
<Separator/>
<Action name="rename"/>
<Action name="move_to_trash" />
- <Action name="delete"/>
+ <Action name="deletefile"/>
<Action name="editMimeType"/>
<Action name="properties"/>
<Separator/>
@@ -53,14 +53,14 @@
<State name="has_selection" >
<enable>
<Action name="move_to_trash" />
- <Action name="delete" />
+ <Action name="deletefile" />
</enable>
</State>
<State name="has_no_selection" >
<disable>
<Action name="rename" />
<Action name="move_to_trash" />
- <Action name="delete" />
+ <Action name="deletefile" />
</disable>
</State>
</kpartgui>
diff --git a/src/dolphinui.rc b/src/dolphinui.rc
index c44665656..935488246 100644
--- a/src/dolphinui.rc
+++ b/src/dolphinui.rc
@@ -1,5 +1,5 @@
<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
-<kpartgui name="dolphin" version="14">
+<kpartgui name="dolphin" version="15">
<MenuBar>
<Menu name="file">
<Action name="new_menu" />
@@ -10,7 +10,7 @@
<Separator/>
<Action name="rename" />
<Action name="move_to_trash" />
- <Action name="delete" />
+ <Action name="deletefile" />
<Separator/>
<Action name="properties" />
</Menu>
@@ -58,7 +58,7 @@
<Action name="edit_copy" />
<Action name="rename" />
<Action name="move_to_trash" />
- <Action name="delete" />
+ <Action name="deletefile" />
<Action name="invert_selection" />
<Separator/>
<Action name="go_back" />
@@ -71,7 +71,7 @@
<Action name="edit_copy" />
<Action name="rename" />
<Action name="move_to_trash" />
- <Action name="delete" />
+ <Action name="deletefile" />
<Action name="invert_selection" />
</enable>
</State>
@@ -81,7 +81,7 @@
<Action name="edit_copy" />
<Action name="rename" />
<Action name="move_to_trash" />
- <Action name="delete" />
+ <Action name="deletefile" />
<Action name="delete_shortcut" />
<Action name="invert_selection" />
</disable>
diff --git a/src/kitemviews/private/kbaloorolesprovider.cpp b/src/kitemviews/private/kbaloorolesprovider.cpp
index 16e3935ca..d6c15afcd 100644
--- a/src/kitemviews/private/kbaloorolesprovider.cpp
+++ b/src/kitemviews/private/kbaloorolesprovider.cpp
@@ -29,6 +29,7 @@
#include <QTime>
#include <QMap>
+#include <QCollator>
struct KBalooRolesProviderSingleton
{
@@ -159,7 +160,11 @@ KBalooRolesProvider::KBalooRolesProvider() :
QString KBalooRolesProvider::tagsFromValues(const QStringList& values) const
{
- return values.join(QStringLiteral(", "));
+ QStringList alphabeticalOrderTags = values;
+ QCollator coll;
+ coll.setNumericMode(true);
+ std::sort(alphabeticalOrderTags.begin(), alphabeticalOrderTags.end(), [&](const QString& s1, const QString& s2){ return coll.compare(s1, s2) < 0; });
+ return alphabeticalOrderTags.join(QStringLiteral(", "));
}
QString KBalooRolesProvider::orientationFromValue(int value) const
diff --git a/src/kitemviews/private/kbaloorolesprovider.h b/src/kitemviews/private/kbaloorolesprovider.h
index a9bd2e8ef..65b59793c 100644
--- a/src/kitemviews/private/kbaloorolesprovider.h
+++ b/src/kitemviews/private/kbaloorolesprovider.h
@@ -62,6 +62,7 @@ protected:
private:
/**
* @return User visible string for the given tag-values.
+ * The tag-values are sorted in alphabetical order.
*/
QString tagsFromValues(const QStringList& values) const;
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp
index 63f6252ed..e60e85fdb 100644
--- a/src/views/dolphinview.cpp
+++ b/src/views/dolphinview.cpp
@@ -182,6 +182,7 @@ DolphinView::DolphinView(const QUrl& url, QWidget* parent) :
this, &DolphinView::slotSelectionChanged);
m_toolTipManager = new ToolTipManager(this);
+ connect(m_toolTipManager, &ToolTipManager::urlActivated, this, &DolphinView::urlActivated);
m_versionControlObserver = new VersionControlObserver(this);
m_versionControlObserver->setModel(m_model);
diff --git a/src/views/dolphinview.h b/src/views/dolphinview.h
index 5e69fd37b..6b62b5da6 100644
--- a/src/views/dolphinview.h
+++ b/src/views/dolphinview.h
@@ -544,6 +544,12 @@ signals:
*/
void toggleActiveViewRequested();
+ /**
+ * Is emitted when the user clicks a tag or a link
+ * in the metadata widget of a tooltip.
+ */
+ void urlActivated(const QUrl& url);
+
protected:
/** Changes the zoom level if Control is pressed during a wheel event. */
virtual void wheelEvent(QWheelEvent* event) Q_DECL_OVERRIDE;
diff --git a/src/views/tooltips/dolphinfilemetadatawidget.cpp b/src/views/tooltips/dolphinfilemetadatawidget.cpp
index 755636c6c..52eeb3b71 100644
--- a/src/views/tooltips/dolphinfilemetadatawidget.cpp
+++ b/src/views/tooltips/dolphinfilemetadatawidget.cpp
@@ -67,10 +67,14 @@ DolphinFileMetaDataWidget::DolphinFileMetaDataWidget(QWidget* parent) :
m_fileMetaDataWidget = new KFileMetaDataWidget(this);
connect(m_fileMetaDataWidget, &KFileMetaDataWidget::metaDataRequestFinished,
this, &DolphinFileMetaDataWidget::metaDataRequestFinished);
+ connect(m_fileMetaDataWidget, &KFileMetaDataWidget::urlActivated,
+ this, &DolphinFileMetaDataWidget::urlActivated);
#else
m_fileMetaDataWidget = new Baloo::FileMetaDataWidget(this);
connect(m_fileMetaDataWidget, &Baloo::FileMetaDataWidget::metaDataRequestFinished,
this, &DolphinFileMetaDataWidget::metaDataRequestFinished);
+ connect(m_fileMetaDataWidget, &Baloo::FileMetaDataWidget::urlActivated,
+ this, &DolphinFileMetaDataWidget::urlActivated);
#endif
m_fileMetaDataWidget->setForegroundRole(QPalette::ToolTipText);
m_fileMetaDataWidget->setReadOnly(true);
diff --git a/src/views/tooltips/dolphinfilemetadatawidget.h b/src/views/tooltips/dolphinfilemetadatawidget.h
index cf796250d..c5c228766 100644
--- a/src/views/tooltips/dolphinfilemetadatawidget.h
+++ b/src/views/tooltips/dolphinfilemetadatawidget.h
@@ -69,6 +69,12 @@ signals:
*/
void metaDataRequestFinished(const KFileItemList& items);
+ /**
+ * Is emitted when the user clicks a tag or a link
+ * in the metadata widget.
+ */
+ void urlActivated(const QUrl& url);
+
private:
QLabel* m_preview;
QLabel* m_name;
diff --git a/src/views/tooltips/tooltipmanager.cpp b/src/views/tooltips/tooltipmanager.cpp
index 4a9f91359..4c5825635 100644
--- a/src/views/tooltips/tooltipmanager.cpp
+++ b/src/views/tooltips/tooltipmanager.cpp
@@ -86,6 +86,8 @@ void ToolTipManager::showToolTip(const KFileItem& item, const QRectF& itemRect,
m_fileMetaDataWidget = new DolphinFileMetaDataWidget();
connect(m_fileMetaDataWidget, &DolphinFileMetaDataWidget::metaDataRequestFinished,
this, &ToolTipManager::slotMetaDataRequestFinished);
+ connect(m_fileMetaDataWidget, &DolphinFileMetaDataWidget::urlActivated,
+ this, &ToolTipManager::urlActivated);
m_contentRetrievalTimer->start();
m_showToolTipTimer->start();
diff --git a/src/views/tooltips/tooltipmanager.h b/src/views/tooltips/tooltipmanager.h
index 9c504c898..9f1f104f1 100644
--- a/src/views/tooltips/tooltipmanager.h
+++ b/src/views/tooltips/tooltipmanager.h
@@ -58,6 +58,13 @@ public:
*/
void hideToolTip();
+signals:
+ /**
+ * Is emitted when the user clicks a tag or a link
+ * in the metadata widget.
+ */
+ void urlActivated(const QUrl& url);
+
private slots:
void startContentRetrieval();
void setPreviewPix(const KFileItem& item, const QPixmap& pix);