#include "dolphinapplication.h"
#include "dolphinmainwindow.h"
+#include "dolphinviewcontainer.h"
#include <applicationadaptor.h>
#include <kcmdlineargs.h>
#include <kurl.h>
#include <QtDBus/QDBusConnection>
+#include <QtCore/QDir>
DolphinApplication::DolphinApplication() :
m_lastId(0)
int DolphinApplication::newInstance()
{
- int exitValue = KUniqueApplication::newInstance();
-
+ KCmdLineArgs::setCwd(QDir::currentPath().toUtf8());
KCmdLineArgs* args = KCmdLineArgs::parsedArgs();
+ static bool first = true;
if (args->count() > 0) {
for (int i = 0; i < args->count(); ++i) {
openWindow(args->url(i));
}
- } else {
+ } else if( !first || !isSessionRestored()) {
openWindow(KUrl());
}
+ first = false;
args->clear();
- return exitValue;
+ return 0;
}
int DolphinApplication::openWindow(const KUrl& url)
{
DolphinMainWindow* win = createMainWindow();
- if ((win->activeView() != 0) && url.isValid()) {
- win->activeView()->setUrl(url);
+ if ((win->activeViewContainer() != 0) && url.isValid()) {
+ win->activeViewContainer()->setUrl(url);
}
win->show();
return win->getId();