]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinapplication.cpp
Remove knepomukdatamanagement_export.h
[dolphin.git] / src / dolphinapplication.cpp
index 0dc9c96024894fa61fe57c19a22e3dc6436b3731..8e83a85928a0dadf56f5b0969c99c9f409e4d8f6 100644 (file)
@@ -21,7 +21,6 @@
 #include "dolphinapplication.h"
 #include "dolphinmainwindow.h"
 #include "dolphin_generalsettings.h"
-#include "settings/dolphinsettings.h"
 
 #include <KCmdLineArgs>
 #include <KDebug>
 DolphinApplication::DolphinApplication() :
     m_mainWindow(0)
 {
+    KGlobal::locale()->insertCatalog("libkonq"); // Needed for applications using libkonq
+
     m_mainWindow = new DolphinMainWindow();
     m_mainWindow->setAttribute(Qt::WA_DeleteOnClose);
     m_mainWindow->show();
 
     KCmdLineArgs* args = KCmdLineArgs::parsedArgs();
 
+    const int argsCount = args->count();
+
+    QList<KUrl> urls;
+    for (int i = 0; i < argsCount; ++i) {
+        const KUrl url = args->url(i);
+        if (url.isValid()) {
+            urls.append(url);
+        }
+    }
+
     bool resetSplitSettings = false;
-    GeneralSettings* generalSettings = DolphinSettings::instance().generalSettings();
-    if (args->isSet("split") && !generalSettings->splitView()) {
+    if (args->isSet("split") && !GeneralSettings::splitView()) {
         // Dolphin should be opened with a split view although this is not
         // set in the GeneralSettings. Temporary adjust the setting until
         // all passed URLs have been opened.
-        generalSettings->setSplitView(true);
+        GeneralSettings::setSplitView(true);
         resetSplitSettings = true;
-    }
 
-    const int argsCount = args->count();
-    if (argsCount > 0) {
-        QList<KUrl> urls;
-        for (int i = 0; i < argsCount; ++i) {
-            const KUrl url = args->url(i);
-            if (url.isValid()) {
-                urls.append(url);
-            }
+        // We need 2 URLs to open Dolphin in split view mode
+        if (urls.isEmpty()) { // No URL given - Open home URL in all two views
+            urls.append(GeneralSettings::homeUrl());
+            urls.append(GeneralSettings::homeUrl());
+        } else if (urls.length() == 1) { // Only 1 URL given - Open given URL in all two views
+            urls.append(urls.at(0));
         }
+    }
 
-        if (!urls.isEmpty()) {
-            if (args->isSet("select")) {
-                m_mainWindow->openFiles(urls);
-            } else {
-                m_mainWindow->openDirectories(urls);
-            }
+    if (!urls.isEmpty()) {
+        if (args->isSet("select")) {
+            m_mainWindow->openFiles(urls);
+        } else {
+            m_mainWindow->openDirectories(urls);
         }
     }
-    args->clear();
 
     if (resetSplitSettings) {
-        generalSettings->setSplitView(false);
+        GeneralSettings::setSplitView(false);
     }
+
+    args->clear();
 }
 
 DolphinApplication::~DolphinApplication()