From 80c54b321ba3d4b5d37a2da10af32bf7e2b298d0 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Sun, 11 Oct 2009 09:22:46 +0200 Subject: Fixing Application::postLaunch() && BookmarksProvider behaviour Another fantastic patch from Ronny Scholz PS: Ehi, Ronny. I think you need a nickname :D --- src/application.cpp | 15 ++++++++++++++- src/mainwindow.cpp | 4 ---- 2 files changed, 14 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/application.cpp b/src/application.cpp index e3c06a5b..fdd02bf5 100644 --- a/src/application.cpp +++ b/src/application.cpp @@ -87,6 +87,16 @@ int Application::newInstance() { KCmdLineArgs::setCwd(QDir::currentPath().toUtf8()); KCmdLineArgs* args = KCmdLineArgs::parsedArgs(); + + // we share one process for several mainwindows, + // so initialize only once + static bool first = true; + + if (first) + { + QTimer::singleShot(0, this, SLOT(postLaunch())); + first = false; + } // is your app session restored? restore session... // this mechanism also falls back to load usual plain rekonq @@ -151,6 +161,10 @@ void Application::postLaunch() Application::historyManager(); Application::sessionManager(); + + // bookmarks loading + connect(Application::bookmarkProvider(), SIGNAL(openUrl(const KUrl&, const Rekonq::OpenType&)), + Application::instance(), SLOT(loadUrl(const KUrl&, const Rekonq::OpenType&))); } @@ -393,7 +407,6 @@ MainWindow *Application::newMainWindow() m_mainWindows.prepend(w); w->show(); - QTimer::singleShot(0, this, SLOT(postLaunch())); return w; } diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index ac9b83bb..45a12a78 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -204,10 +204,6 @@ void MainWindow::postLaunch() // Find Bar signal connect(m_findBar, SIGNAL(searchString(const QString &)), this, SLOT(slotFind(const QString &))); - // bookmarks loading - connect(Application::bookmarkProvider(), SIGNAL(openUrl(const KUrl&, const Rekonq::OpenType&)), - Application::instance(), SLOT(loadUrl(const KUrl&, const Rekonq::OpenType&))); - // setting up toolbars to NOT have context menu enabled setContextMenuPolicy(Qt::DefaultContextMenu); -- cgit v1.2.1