+
+int DolphinApplication::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 if( !first || !isSessionRestored()) {
+ openWindow(KUrl());
+ }
+ first = false;
+
+ args->clear();
+
+ return 0;
+}
+
+int DolphinApplication::openWindow(const KUrl& url)
+{
+ DolphinMainWindow* win = createMainWindow();
+ if ((win->activeViewContainer() != 0) && url.isValid()) {
+ win->activeViewContainer()->setUrl(url);
+ }
+ win->show();
+ return win->getId();
+}
+