From 384ee037c2f58ca58f3274249f3b44d840af8ef9 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Thu, 27 Sep 2007 12:36:40 +0000 Subject: [PATCH] reactivate session management svn path=/trunk/KDE/kdebase/apps/; revision=717737 --- src/main.cpp | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 12eac22110..225c48ed60 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -20,9 +20,12 @@ #include "dolphinapplication.h" +#include "dolphinmainwindow.h" + #include #include #include +#include int main(int argc, char **argv) { @@ -72,17 +75,21 @@ int main(int argc, char **argv) DolphinApplication app; KGlobal::locale()->insertCatalog("libkonq"); // needed for applications using libkonq -#ifdef __GNUC__ -#warning TODO, SessionManagement -#endif -#if 0 - if (false /* KDE4-TODO: app.isSessionRestored() */) { + if (app.isSessionRestored()) { int n = 1; while (KMainWindow::canBeRestored(n)) { - Dolphin::mainWin().restore(n); + const QString className = KXmlGuiWindow::classNameOfToplevel(n); + if (className == QLatin1String("DolphinMainWindow")) { + DolphinMainWindow* win = app.createMainWindow(); + win->restore(n); + } else { + kWarning() << "Unknown class " << className << " in session saved data!"; + } ++n; } } else { -#endif - return app.exec(); + app.exec(); } + + return 0; +}