diff options
4 files changed, 19 insertions, 1 deletions
diff --git a/src/core/net/network_delegate_qt.cpp b/src/core/net/network_delegate_qt.cpp index 37309931e..1441ec336 100644 --- a/src/core/net/network_delegate_qt.cpp +++ b/src/core/net/network_delegate_qt.cpp @@ -64,6 +64,9 @@ WebContentsAdapterClient::NavigationType pageTransitionToNavigationType(ui::Page if (qualifier & ui::PAGE_TRANSITION_FORWARD_BACK) return WebContentsAdapterClient::BackForwardNavigation; + // FIXME: Make redirects a separate type: + if (qualifier & ui::PAGE_TRANSITION_CLIENT_REDIRECT) + return WebContentsAdapterClient::OtherNavigation; ui::PageTransition strippedTransition = ui::PageTransitionStripQualifier(transition); diff --git a/tests/auto/widgets/qwebenginepage/resources/reload.html b/tests/auto/widgets/qwebenginepage/resources/reload.html new file mode 100644 index 000000000..d9c33dfcd --- /dev/null +++ b/tests/auto/widgets/qwebenginepage/resources/reload.html @@ -0,0 +1,8 @@ +<html> +<head> +<meta http-equiv="refresh" content="2"> +</head> +<body> +This is test content +</body> +</html> diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp index fdff57254..8c3b4002c 100644 --- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp +++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp @@ -600,11 +600,17 @@ void tst_QWebEnginePage::acceptNavigationRequestNavigationType() QTRY_COMPARE(loadSpy.count(), 4); QTRY_COMPARE(page.navigations.count(), 4); + page.load(QUrl("qrc:///resources/reload.html")); + QTRY_COMPARE(loadSpy.count(), 6); + QTRY_COMPARE(page.navigations.count(), 6); + QList<QWebEnginePage::NavigationType> expectedList; expectedList << QWebEnginePage::NavigationTypeTyped << QWebEnginePage::NavigationTypeTyped << QWebEnginePage::NavigationTypeBackForward - << QWebEnginePage::NavigationTypeReload; + << QWebEnginePage::NavigationTypeReload + << QWebEnginePage::NavigationTypeTyped + << QWebEnginePage::NavigationTypeOther; QVERIFY(expectedList.count() == page.navigations.count()); for (int i = 0; i < expectedList.count(); ++i) { QCOMPARE(page.navigations[i].type, expectedList[i]); diff --git a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.qrc b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.qrc index 3bb88cbe1..f2bf8c6ff 100644 --- a/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.qrc +++ b/tests/auto/widgets/qwebenginepage/tst_qwebenginepage.qrc @@ -14,6 +14,7 @@ <file>resources/user.css</file> <file>resources/image.png</file> <file>resources/pasteimage.html</file> + <file>resources/reload.html</file> <file>resources/style.css</file> <file>resources/test1.html</file> <file>resources/test2.html</file> |