src/WebPage.cpp in capybara-webkit-1.1.1 vs src/WebPage.cpp in capybara-webkit-1.2.0

- old
+ new

@@ -9,10 +9,12 @@ #include <QResource> #include <iostream> #include <QWebSettings> #include <QUuid> #include <QApplication> +#include <QWebView> +#include <QMainWindow> WebPage::WebPage(WebPageManager *manager, QObject *parent) : QWebPage(parent) { m_loading = false; m_failed = false; m_manager = manager; @@ -31,20 +33,29 @@ connect(this, SIGNAL(loadFinished(bool)), this, SLOT(loadFinished(bool))); connect(this, SIGNAL(frameCreated(QWebFrame *)), this, SLOT(frameCreated(QWebFrame *))); connect(this, SIGNAL(unsupportedContent(QNetworkReply*)), this, SLOT(handleUnsupportedContent(QNetworkReply*))); - resetWindowSize(); + connect(this, SIGNAL(windowCloseRequested()), this, SLOT(remove())); settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, true); + settings()->setAttribute(QWebSettings::JavascriptCanCloseWindows, true); + settings()->setAttribute(QWebSettings::LocalStorageDatabaseEnabled, true); + + createWindow(); } -void WebPage::resetWindowSize() { - this->setViewportSize(QSize(1680, 1050)); - this->settings()->setAttribute(QWebSettings::LocalStorageDatabaseEnabled, true); +void WebPage::createWindow() { + QSize size(1680, 1050); + setViewportSize(size); } +void WebPage::resize(int width, int height) { + QSize size(width, height); + setViewportSize(size); +} + void WebPage::resetLocalStorage() { this->currentFrame()->evaluateJavaScript("localStorage.clear()"); } void WebPage::setCustomNetworkAccessManager() { @@ -332,11 +343,11 @@ return false; } QWebPage *WebPage::createWindow(WebWindowType type) { Q_UNUSED(type); - return m_manager->createPage(this); + return m_manager->createPage(); } QString WebPage::uuid() { return m_uuid; } @@ -357,9 +368,13 @@ selector == uuid()); } void WebPage::setFocus() { m_manager->setCurrentPage(this); +} + +void WebPage::remove() { + m_manager->removePage(this); } void WebPage::setConfirmAction(QString action) { m_confirm = (action == "Yes"); }