diff options
Diffstat (limited to 'src/webengine')
| -rw-r--r-- | src/webengine/webengineprofile.cpp | 16 | ||||
| -rw-r--r-- | src/webengine/webengineprofile.h | 4 | ||||
| -rw-r--r-- | src/webengine/webview.cpp | 11 | ||||
| -rw-r--r-- | src/webengine/webview.h | 3 | 
4 files changed, 20 insertions, 14 deletions
| diff --git a/src/webengine/webengineprofile.cpp b/src/webengine/webengineprofile.cpp index 263dcb5..55af9f2 100644 --- a/src/webengine/webengineprofile.cpp +++ b/src/webengine/webengineprofile.cpp @@ -51,25 +51,17 @@ QUrl WebEngineProfile::newtab() const      return m_newtab;  } -void WebEngineProfile::loadProfile(const QString &path) +void WebEngineProfile::loadProfile(QHash<QString, QString> conf, const QString &path)  {      m_configPath = path; -    // check if config file exists -    if(!QFileInfo::exists(m_configPath)) { -#ifdef QT_DEBUG -        qDebug("No config for profile '%s': %s", qUtf8Printable(m_name), qUtf8Printable(m_configPath)); -#endif -        return; -    } -  #ifdef QT_DEBUG      qDebug("Reading config for profile '%s': %s", qUtf8Printable(m_name), qUtf8Printable(m_configPath));  #endif      QSettings config(m_configPath, QSettings::IniFormat); -    m_homepage = config.value("homepage", m_homepage).toUrl(); -    m_newtab = config.value("newtab", m_newtab).toUrl(); +    m_homepage = config.value("homepage", conf["profile.homepage"]).toUrl(); +    m_newtab = config.value("newtab", conf["profile.newtab"]).toUrl();      config.beginGroup("http");      setHttpUserAgent(config.value("userAgent", httpUserAgent()).toString()); @@ -84,7 +76,7 @@ void WebEngineProfile::loadProfile(const QString &path)              setHttpCacheType(QWebEngineProfile::NoCache);          }      } -    setHttpCacheMaximumSize(config.value("cacheSize").toInt()); +    setHttpCacheMaximumSize(config.value("cacheSize", httpCacheMaximumSize()).toInt());      config.endGroup(); // http      config.beginGroup("policy"); diff --git a/src/webengine/webengineprofile.h b/src/webengine/webengineprofile.h index 6a0d4e2..76295d3 100644 --- a/src/webengine/webengineprofile.h +++ b/src/webengine/webengineprofile.h @@ -9,9 +9,9 @@  #ifndef SMOLBOTE_WEBENGINEPROFILE_H  #define SMOLBOTE_WEBENGINEPROFILE_H +#include "cookiefilter.h"  #include <QUrl>  #include <QWebEngineProfile> -#include "cookiefilter.h"  class WebEngineProfile : public QWebEngineProfile  { @@ -27,7 +27,7 @@ public:      QUrl newtab() const;  public slots: -    void loadProfile(const QString &path); +    void loadProfile(QHash<QString, QString> conf, const QString &path);      void saveProfile(const QString &path = QString());  private: diff --git a/src/webengine/webview.cpp b/src/webengine/webview.cpp index 7ca3280..520ce50 100644 --- a/src/webengine/webview.cpp +++ b/src/webengine/webview.cpp @@ -13,6 +13,7 @@  #include <QDialog>  #include <QStatusBar>  #include <QVBoxLayout> +#include "mainwindow/widgets/tabbar.h"  WebView::WebView(MainWindow *parentMainWindow, QWidget *parent)      : QWebEngineView(parent) @@ -127,3 +128,13 @@ void WebView::triggerViewAction(WebView::ViewAction action)          break;      }  } + +WebView *createWebView(const QUrl &url, WebEngineProfile *profile, MainWindow *parent) +{ +    auto *view = new WebView(parent); +    auto *page = new WebPage(profile); +    view->setPage(page); +    page->load(url); + +    return view; +} diff --git a/src/webengine/webview.h b/src/webengine/webview.h index 1fab1db..0750aee 100644 --- a/src/webengine/webview.h +++ b/src/webengine/webview.h @@ -14,6 +14,7 @@  class QMenu;  class MainWindow; +class WebEngineProfile;  class WebView : public QWebEngineView  {      Q_OBJECT @@ -62,4 +63,6 @@ private:      QWebEnginePage *m_devToolsPage;  }; +WebView *createWebView(const QUrl &url, WebEngineProfile *profile, MainWindow *parent); +  #endif // SMOLBOTE_WEBVIEW_H | 
