]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dbusinterface.cpp
Avoid crashing on startup if DBus isn't running
[dolphin.git] / src / dbusinterface.cpp
index abdb3a0fefdee27308bc64788755790e28c91e30..2b674b96888382b5497e0fd639c8c9fd6f7a0788 100644 (file)
@@ -1,20 +1,7 @@
 /*
- * Copyright 2015 Ashish Bansal<bansal.ashish096@gmail.com>
+ * SPDX-FileCopyrightText: 2015 Ashish Bansal <bansal.ashish096@gmail.com>
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ * SPDX-License-Identifier: GPL-2.0-or-later
  */
 
 #include "dbusinterface.h"
@@ -33,8 +20,10 @@ DBusInterface::DBusInterface() :
 {
     QDBusConnection::sessionBus().registerObject(QStringLiteral("/org/freedesktop/FileManager1"), this,
             QDBusConnection::ExportScriptableContents | QDBusConnection::ExportAdaptors);
-    QDBusConnection::sessionBus().interface()->registerService(QStringLiteral("org.freedesktop.FileManager1"),
-                                                               QDBusConnectionInterface::QueueService);
+    QDBusConnectionInterface *sessionInterface = QDBusConnection::sessionBus().interface();
+    if (sessionInterface) {
+        sessionInterface->registerService(QStringLiteral("org.freedesktop.FileManager1"), QDBusConnectionInterface::QueueService);
+    }
 }
 
 void DBusInterface::ShowFolders(const QStringList& uriList, const QString& startUpId)
@@ -72,6 +61,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()
 {
     m_isDaemon = true;