/* ============================================================ * The rekonq project * ============================================================ * SPDX-License-Identifier: GPL-2.0-or-later * Copyright (C) 2008-2013 by Andrea Diamantini * SPDX-License-Identifier: GPL-3.0-only * Copyright (C) 2022 aqua * ============================================================ * Description: Application Entry Point * ============================================================ */ #include "application.h" //#include "sessionmanager.h" //#include "rekonqwindow.h" //#include "urlresolver.h" #include static const char *description = "A lightweight Web Browser based on Qt WebEngine"; int main(int argc, char **argv) { // When loading QtWebEngine from a plugin, set Qt::AA_ShareOpenGLContexts using QCoreApplication::setAttribute QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts, true); Application app(argc, argv); // Set application data QCoreApplication::setApplicationName(QL1S("rekonq")); QCoreApplication::setApplicationVersion(REKONQ_VERSION); // Initialize command line args QCommandLineParser parser; parser.setApplicationDescription(description); parser.addHelpOption(); parser.addVersionOption(); // Define the command line options QCommandLineOption options_incognito("incognito", QCoreApplication::translate("main", "Open in incognito mode")); QCommandLineOption options_webapp("webapp", QCoreApplication::translate("main", "Open URL as web app (in a simple window)")); QCommandLineOption options_plugin({"l", "load"}, QCoreApplication::translate("main", "Add plugin to load path"), "path"); parser.addOptions({options_incognito, options_webapp, options_plugin}); // Define the positional arguments parser.addPositionalArgument("URL", QCoreApplication::translate("main", "Location to open")); parser.process(app); if (parser.isSet(options_plugin)) { for (const auto &plugin : parser.values(options_plugin)) app.registerPlugin(plugin); } const auto positionalArguments = parser.positionalArguments(); if (parser.isSet(options_webapp)) positionalArguments.isEmpty() ? app.newWebApp() : app.newWebApp(QUrl::fromUserInput(positionalArguments.first())); /*if (!Application::start()) { kWarning() << "rekonq is already running!"; return 0; }*/ /* if (app.isSessionRestored()) { for (int i = 1; RekonqWindow::canBeRestored(i); i++) { RekonqWindow * newRekonqWindow = app.newWindow(false); if (newRekonqWindow->restore(i)) SessionManager::self()->restoreWindow(newRekonqWindow); } } */ return Application::exec(); }