aboutsummaryrefslogtreecommitdiff
path: root/src/browser.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/browser.h')
-rw-r--r--src/browser.h41
1 files changed, 10 insertions, 31 deletions
diff --git a/src/browser.h b/src/browser.h
index f96d8c5..b43d45a 100644
--- a/src/browser.h
+++ b/src/browser.h
@@ -6,8 +6,8 @@
* SPDX-License-Identifier: GPL-3.0
*/
-#ifndef BROWSER_H
-#define BROWSER_H
+#ifndef SMOLBOTE_BROWSER_H
+#define SMOLBOTE_BROWSER_H
#include "singleapplication.h"
#include <QJsonObject>
@@ -15,55 +15,34 @@
#include <memory>
class Configuration;
-class MainWindow;
class BookmarksWidget;
class DownloadsWidget;
class UrlRequestInterceptor;
-class WebEngineProfile;
+class MainWindow;
class Browser : public SingleApplication
{
Q_OBJECT
public:
- struct Plugin {
- QJsonObject meta;
- QObject *pointer;
- };
-
explicit Browser(int &argc, char *argv[]);
~Browser() final;
Q_DISABLE_COPY(Browser)
void setConfiguration(std::shared_ptr<Configuration> &config);
-
- std::shared_ptr<WebEngineProfile> profile(const QString &storageName);
-
- const QList<QString> profiles() const
- {
- return m_profiles.keys();
- }
-
- const QVector<Plugin> plugins() const
- {
- return m_plugins;
- }
+ void setup(const QString &defaultProfile);
public slots:
- MainWindow *createSession(const QString &profileName, bool newWindow, const QStringList &urls);
-
-private:
+ void createSession(const QString &profileName, bool newWindow, const QStringList &urls);
MainWindow *createWindow();
+private:
std::shared_ptr<Configuration> m_config;
+ std::shared_ptr<BookmarksWidget> m_bookmarks;
+ std::shared_ptr<DownloadsWidget> m_downloads;
+ std::shared_ptr<UrlRequestInterceptor> m_urlFilter;
QVector<MainWindow *> m_windows;
- QVector<Plugin> m_plugins;
- QHash<QString, std::shared_ptr<WebEngineProfile>> m_profiles;
- std::shared_ptr<WebEngineProfile> m_defaultProfile;
- UrlRequestInterceptor *m_urlRequestInterceptor = nullptr;
- std::shared_ptr<BookmarksWidget> m_bookmarksManager;
- std::shared_ptr<DownloadsWidget> m_downloadManager;
};
-#endif // BROWSER_H
+#endif // SMOLBOTE_BROWSER_H