Back button click Android not registered in Qt Webview
I am creating a small Android application in Qt 5.10. The application consists of a main.qml that holds a Qt StackView. In this StackView one Qt Flickable page is defined with a button on it to navigate to a new page, which is a Qt WebView. After navigation, this WebView will load a local HTML page. But when I hit the Android back button on the second page the app will not navigate back to the first one. See the code below for more information.
main.qml
Code:
import QtQuick 2.10
import QtQuick.Controls 2.2
ApplicationWindow {
id: appWindow
visible: true
StackView {
id: navPane
anchors.fill: parent
initialItem: pageOne
Keys.onBackPressed: {
popOnePage()
}
function popOnePage() {
if(navPane.depth == 1)
return
pop()
}
function pushOnePage(pageComponent) {
push(pageComponent)
}
}
Component {
id: pageOne
PageOne {}
}
Component {
id: pageTwo
PageTwo {}
}
}
PageOne.qml
Code:
import QtQuick 2.10
import QtQuick.Controls 2.2
Flickable {
Button {
text: "Go to page 2"
anchors.centerIn: parent
onClicked: {
navPane.pushOnePage(pageTwo)
}
}
}
PageTwo.qml
Code:
import QtQuick 2.10
import QtWebView 1.1
WebView {
id: webView
url: initialUrl //link to local HTML file
}
After some debugging I found out that the Keys.onBackPressed signal is never received. But when I use a Flickable instead of a WebView the signal will be received and the navigation works as expected. Can someone tell me if it is possible to receive this signal while using a WebView or maybe tell me what I am doing wrong? It will also do for me if there exists another component that can work with HTML. Any help would be greatly appreciated!