summaryrefslogtreecommitdiffstats
path: root/Tools
diff options
context:
space:
mode:
authorKonstantin Tokarev <annulen@yandex.ru>2019-06-04 22:44:55 +0300
committerKonstantin Tokarev <annulen@yandex.ru>2019-06-04 22:45:21 +0300
commitc49326e942d7cc21f78fe187020dce73befdd935 (patch)
treefaf0927eeeff4c57e998902b2085d976e588ed2b /Tools
parent72cfbd7664f21fcc0e62b869a6b01bf73eb5e7da (diff)
Import WebKit commit 5ccca3a720f7c2251c4ac8b28f25bd73524081f0
Change-Id: Idfb37cd43929536d4c67d1fa5d8cb598e9c0ad7e Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
Diffstat (limited to 'Tools')
-rw-r--r--Tools/QtTestBrowser/launcherwindow.cpp35
-rw-r--r--Tools/QtTestBrowser/launcherwindow.h4
-rw-r--r--Tools/QtTestBrowser/mainwindow.cpp2
-rw-r--r--Tools/TestWebKitAPI/PlatformQt.cmake2
4 files changed, 41 insertions, 2 deletions
diff --git a/Tools/QtTestBrowser/launcherwindow.cpp b/Tools/QtTestBrowser/launcherwindow.cpp
index 716a6e3e8..6e221840d 100644
--- a/Tools/QtTestBrowser/launcherwindow.cpp
+++ b/Tools/QtTestBrowser/launcherwindow.cpp
@@ -222,6 +222,7 @@ void LauncherWindow::applyPrefs()
settings->setAttribute(QWebSettings::TiledBackingStoreEnabled, m_windowOptions.useTiledBackingStore);
settings->setAttribute(QWebSettings::FrameFlatteningEnabled, m_windowOptions.useFrameFlattening);
settings->setAttribute(QWebSettings::WebGLEnabled, m_windowOptions.useWebGL);
+ settings->setAttribute(QWebSettings::MediaEnabled, m_windowOptions.useMedia);
m_windowOptions.useWebAudio = settings->testAttribute(QWebSettings::WebAudioEnabled);
m_windowOptions.useMediaSource = settings->testAttribute(QWebSettings::MediaSourceEnabled);
@@ -326,6 +327,15 @@ void LauncherWindow::createChrome()
toggleWebGL->setEnabled(false);
#endif
+ QAction* toggleMedia = toolsMenu->addAction("Toggle Media", this, SLOT(toggleMedia(bool)));
+ toggleMedia->setCheckable(true);
+#if ENABLE(VIDEO)
+ toggleMedia->setChecked(settings->testAttribute(QWebSettings::MediaEnabled));
+#else
+ toggleMedia->setChecked(false);
+ toggleMedia->setEnabled(false);
+#endif
+
QAction* toggleWebAudio = toolsMenu->addAction("Toggle WebAudio", this, SLOT(toggleWebAudio(bool)));
toggleWebAudio->setCheckable(true);
#if ENABLE(WEB_AUDIO)
@@ -336,7 +346,7 @@ void LauncherWindow::createChrome()
QAction* toggleMediaSource = toolsMenu->addAction("Toggle MediaSource", this, SLOT(toggleMediaSource(bool)));
toggleMediaSource->setCheckable(true);
- toggleWebGL->setChecked(settings->testAttribute(QWebSettings::MediaSourceEnabled));
+ toggleMediaSource->setChecked(settings->testAttribute(QWebSettings::MediaSourceEnabled));
#if !ENABLE(MEDIA_SOURCE)
toggleMediaSource->setEnabled(false);
#endif
@@ -948,6 +958,12 @@ void LauncherWindow::toggleWebGL(bool toggle)
page()->settings()->setAttribute(QWebSettings::WebGLEnabled, toggle);
}
+void LauncherWindow::toggleMedia(bool toggle)
+{
+ m_windowOptions.useMedia = toggle;
+ page()->settings()->setAttribute(QWebSettings::MediaEnabled, toggle);
+}
+
void LauncherWindow::toggleWebAudio(bool toggle)
{
m_windowOptions.useWebAudio = toggle;
@@ -1142,6 +1158,23 @@ void LauncherWindow::showUserAgentDialog()
delete dialog;
}
+void LauncherWindow::showSSLErrorConfirmation(QNetworkReply* reply, const QList<QSslError>& errors)
+{
+ QString errorStrings = "<ul>";
+ for (const QSslError& error : errors)
+ errorStrings += "<li>" + error.errorString() + "</li>";
+ errorStrings += "</ul>";
+
+ QMessageBox sslWarningBox;
+ sslWarningBox.setText("SSL handshake problem");
+ sslWarningBox.setInformativeText(errorStrings);
+ sslWarningBox.setStandardButtons(QMessageBox::Abort | QMessageBox::Ignore);
+ sslWarningBox.setDefaultButton(QMessageBox::Abort);
+ sslWarningBox.setIcon(QMessageBox::Warning);
+ if (sslWarningBox.exec() == QMessageBox::Ignore)
+ reply->ignoreSslErrors();
+}
+
void LauncherWindow::loadURLListFromFile()
{
QString selectedFile;
diff --git a/Tools/QtTestBrowser/launcherwindow.h b/Tools/QtTestBrowser/launcherwindow.h
index e475a8022..8a8baeeda 100644
--- a/Tools/QtTestBrowser/launcherwindow.h
+++ b/Tools/QtTestBrowser/launcherwindow.h
@@ -72,6 +72,7 @@ public:
bool useCompositing { false };
bool useTiledBackingStore { false };
bool useWebGL { false };
+ bool useMedia { true };
bool useWebAudio { false };
bool useMediaSource { false };
bool useFrameFlattening { false };
@@ -134,6 +135,7 @@ protected Q_SLOTS:
void toggleTiledBackingStore(bool toggle);
void toggleResizesToContents(bool toggle);
void toggleWebGL(bool toggle);
+ void toggleMedia(bool toggle);
void toggleWebAudio(bool toggle);
void toggleMediaSource(bool toggle);
void toggleSpatialNavigation(bool enable);
@@ -170,6 +172,8 @@ protected Q_SLOTS:
void clearSelection();
void showFPS(bool enable);
void showUserAgentDialog();
+ void showSSLErrorConfirmation(QNetworkReply*, const QList<QSslError>&);
+
void printURL(const QUrl&);
#if !defined(QT_NO_FILEDIALOG) && !defined(QT_NO_MESSAGEBOX)
diff --git a/Tools/QtTestBrowser/mainwindow.cpp b/Tools/QtTestBrowser/mainwindow.cpp
index d342147ac..e22193a96 100644
--- a/Tools/QtTestBrowser/mainwindow.cpp
+++ b/Tools/QtTestBrowser/mainwindow.cpp
@@ -43,6 +43,7 @@
#include <QFileDialog>
#endif
#include <QMenuBar>
+#include <QMessageBox>
MainWindow::MainWindow()
: m_page(new WebPage(this))
@@ -85,6 +86,7 @@ void MainWindow::buildUI()
connect(page()->mainFrame(), SIGNAL(loadStarted()), this, SLOT(onLoadStarted()));
connect(page()->mainFrame(), SIGNAL(iconChanged()), this, SLOT(onIconChanged()));
connect(page()->mainFrame(), SIGNAL(titleChanged(QString)), this, SLOT(onTitleChanged(QString)));
+ connect(page()->networkAccessManager(), SIGNAL(sslErrors(QNetworkReply*, const QList<QSslError>&)), this, SLOT(onSSLErrors(QNetworkReply*, const QList<QSslError>&)));
connect(page(), SIGNAL(windowCloseRequested()), this, SLOT(close()));
#ifndef QT_NO_SHORTCUT
diff --git a/Tools/TestWebKitAPI/PlatformQt.cmake b/Tools/TestWebKitAPI/PlatformQt.cmake
index c054c661b..81d98bcb5 100644
--- a/Tools/TestWebKitAPI/PlatformQt.cmake
+++ b/Tools/TestWebKitAPI/PlatformQt.cmake
@@ -35,7 +35,7 @@ set(test_webcore_LIBRARIES
WebCore
gtest
${Qt5Gui_LIBRARIES}
- ${DEPEND_STATIC_LIBS}
+ ${STATIC_LIB_DEPENDENCIES}
)
add_executable(TestWebCore