mirror of
https://invent.kde.org/system/dolphin
synced 2024-10-28 03:21:56 +00:00
Add SortOrderForUrl method to DBus interface
adds a method to ask what's the sorting strategy (column and order) for a particular Url, as Dolphin can have directory-specific sorting strategies This makes possible for other apps that have lists of files, like Gwenview to use the same sorting when invoked from dolphin, ie opening an image CCBUG:236059
This commit is contained in:
parent
9fcfbfb6e3
commit
dbabe22249
|
@ -59,6 +59,18 @@ void DBusInterface::ShowItemProperties(const QStringList& uriList, const QString
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DBusInterface::SortOrderForUrl(const QString &url, QString &role, QString &order)
|
||||||
|
{
|
||||||
|
QUrl qurl(url);
|
||||||
|
auto sort = Dolphin::sortOrderForUrl(qurl);
|
||||||
|
role = sort.first;
|
||||||
|
if (sort.second == Qt::AscendingOrder) {
|
||||||
|
order = QStringLiteral("ascending");
|
||||||
|
} else {
|
||||||
|
order = QStringLiteral("descending");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void DBusInterface::setAsDaemon()
|
void DBusInterface::setAsDaemon()
|
||||||
{
|
{
|
||||||
m_isDaemon = true;
|
m_isDaemon = true;
|
||||||
|
|
|
@ -20,6 +20,8 @@ public:
|
||||||
Q_SCRIPTABLE void ShowItems(const QStringList& uriList, const QString& startUpId);
|
Q_SCRIPTABLE void ShowItems(const QStringList& uriList, const QString& startUpId);
|
||||||
Q_SCRIPTABLE void ShowItemProperties(const QStringList& uriList, const QString& startUpId);
|
Q_SCRIPTABLE void ShowItemProperties(const QStringList& uriList, const QString& startUpId);
|
||||||
|
|
||||||
|
Q_SCRIPTABLE void SortOrderForUrl(const QString &url, QString &role, QString &order);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set whether this interface has been created by dolphin --daemon.
|
* Set whether this interface has been created by dolphin --daemon.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
#include "dolphin_generalsettings.h"
|
#include "dolphin_generalsettings.h"
|
||||||
#include "dolphindebug.h"
|
#include "dolphindebug.h"
|
||||||
#include "dolphinmainwindowinterface.h"
|
#include "dolphinmainwindowinterface.h"
|
||||||
|
#include "views/viewproperties.h"
|
||||||
|
|
||||||
#include <KConfigWatcher>
|
#include <KConfigWatcher>
|
||||||
#include <KDialogJobUiDelegate>
|
#include <KDialogJobUiDelegate>
|
||||||
|
@ -140,6 +141,12 @@ QVector<QPair<QSharedPointer<OrgKdeDolphinMainWindowInterface>, QStringList>> Do
|
||||||
return dolphinInterfaces;
|
return dolphinInterfaces;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QPair<QString, Qt::SortOrder> Dolphin::sortOrderForUrl(QUrl &url)
|
||||||
|
{
|
||||||
|
ViewProperties globalProps(url);
|
||||||
|
return QPair<QString, Qt::SortOrder>(globalProps.sortRole(), globalProps.sortOrder());
|
||||||
|
}
|
||||||
|
|
||||||
double GlobalConfig::animationDurationFactor()
|
double GlobalConfig::animationDurationFactor()
|
||||||
{
|
{
|
||||||
if (s_animationDurationFactor >= 0.0) {
|
if (s_animationDurationFactor >= 0.0) {
|
||||||
|
|
|
@ -46,6 +46,8 @@ namespace Dolphin {
|
||||||
*/
|
*/
|
||||||
QVector<QPair<QSharedPointer<OrgKdeDolphinMainWindowInterface>, QStringList>> dolphinGuiInstances(const QString& preferredService);
|
QVector<QPair<QSharedPointer<OrgKdeDolphinMainWindowInterface>, QStringList>> dolphinGuiInstances(const QString& preferredService);
|
||||||
|
|
||||||
|
QPair<QString, Qt::SortOrder> sortOrderForUrl(QUrl &url);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO: Move this somewhere global to all KDE apps, not just Dolphin
|
* TODO: Move this somewhere global to all KDE apps, not just Dolphin
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue