From 82547509149fe96da6fc808b67df8ffc4d40dce7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCri=20Valdmann?= <juri.valdmann@qt.io> Date: Tue, 18 Apr 2017 17:37:02 +0200 Subject: [PATCH] Create example for geolocation in WebEngine Task-number: QTBUG-59822 Change-Id: Iee69f10fefa223313ca112f096b65446b4156ac1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> --- .../maps/doc/images/maps-example.png | Bin 0 -> 47821 bytes .../webenginewidgets/maps/doc/src/maps.qdoc | 98 ++++++++++++++++++ examples/webenginewidgets/maps/main.cpp | 52 ++++++++++ examples/webenginewidgets/maps/mainwindow.cpp | 73 +++++++++++++ examples/webenginewidgets/maps/mainwindow.h | 56 ++++++++++ examples/webenginewidgets/maps/maps.pro | 12 +++ .../webenginewidgets/webenginewidgets.pro | 2 + 7 files changed, 293 insertions(+) create mode 100644 examples/webenginewidgets/maps/doc/images/maps-example.png create mode 100644 examples/webenginewidgets/maps/doc/src/maps.qdoc create mode 100644 examples/webenginewidgets/maps/main.cpp create mode 100644 examples/webenginewidgets/maps/mainwindow.cpp create mode 100644 examples/webenginewidgets/maps/mainwindow.h create mode 100644 examples/webenginewidgets/maps/maps.pro diff --git a/examples/webenginewidgets/maps/doc/images/maps-example.png b/examples/webenginewidgets/maps/doc/images/maps-example.png new file mode 100644 index 0000000000000000000000000000000000000000..4f699f521a04fc4c78ffe7ec3902278845968f1d GIT binary patch literal 47821 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 azb5*_bmHSi^3DW2G*v|{g-SWgkpBUCW%iH& literal 0 HcmV?d00001 diff --git a/examples/webenginewidgets/maps/doc/src/maps.qdoc b/examples/webenginewidgets/maps/doc/src/maps.qdoc new file mode 100644 index 000000000..1082cd1e2 --- /dev/null +++ b/examples/webenginewidgets/maps/doc/src/maps.qdoc @@ -0,0 +1,98 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: http://www.gnu.org/copyleft/fdl.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \example webenginewidgets/maps + \title WebEngine Widgets Maps Example + \ingroup webengine-widgetexamples + \brief Demonstrates how to handle geolocation requests + + \image maps-example.png + + \e {Maps} demonstrates how to handle geolocation requests originating from + a \l QWebEnginePage. + + The \l {https://www.w3.org/TR/geolocation-API/}{Geolocation API} is a + JavaScript API that web applications can use to determine the user's + physical location to show on a map, for example. As Qt WebEngine relies on + \l {Qt Location} to power this API a viable location backend is needed for + the target platform. + + To avoid accidentally sending location information to third parties + geolocation requests are denied by default. This example demonstrates the + steps an application must take in order to start accepting these requests. + + \include examples-run.qdocinc + + \section1 The Code + + The example program consists of a single class, \c MainWindow, inheriting + from \l QMainWindow: + + \quotefromfile webenginewidgets/maps/mainwindow.h + \skipto #include + \printuntil /^\}/ + + In the constructor we first set up the \l QWebEngineView as the central + widget: + + \quotefromfile webenginewidgets/maps/mainwindow.cpp + \skipto MainWindow::MainWindow + \printuntil setCentralWidget + + We then proceed to connect a lambda function to the \l + QWebEnginePage::featurePermissionRequested signal: + + \skipto m_view->page() + \printuntil QWebEnginePage::Feature + + This signal is emitted whenever a web page requests to make use of a certain + feature or device, including not only location services but also audio + capture devices or mouse locking, for example. In this example we only + handle requests for location services: + + \printuntil return + + Now comes the part where we actually ask the user for permission: + + \printuntil securityOrigin + \printuntil }); + + Note that the question includes the host component of the web site's URI (\c + securityOrigin) to inform the user as to exactly which web site will be + receiving their location data. + + We use the \l QWebEnginePage::setFeaturePermission method to communicate the + user's answer back to the web page. + + Finally we ask the \l QWebEnginePage to load the web page that might want to + use location services: + + \printuntil /^\}/ + + \sa {html5-geolocation}{Qt WebEngine HTML5 Geolocation}, {Qt Location} +*/ diff --git a/examples/webenginewidgets/maps/main.cpp b/examples/webenginewidgets/maps/main.cpp new file mode 100644 index 000000000..c2d711106 --- /dev/null +++ b/examples/webenginewidgets/maps/main.cpp @@ -0,0 +1,52 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "mainwindow.h" +#include <QApplication> + +int main(int argc, char *argv[]) +{ + QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + QApplication app(argc, argv); + + MainWindow mainWindow; + mainWindow.show(); + + return app.exec(); +} diff --git a/examples/webenginewidgets/maps/mainwindow.cpp b/examples/webenginewidgets/maps/mainwindow.cpp new file mode 100644 index 000000000..f548e67c2 --- /dev/null +++ b/examples/webenginewidgets/maps/mainwindow.cpp @@ -0,0 +1,73 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "mainwindow.h" + +#include <QMessageBox> + +MainWindow::MainWindow(QWidget *parent) + : QMainWindow(parent) + , m_view(new QWebEngineView(this)) +{ + setCentralWidget(m_view); + + QWebEnginePage *page = m_view->page(); + + connect(page, &QWebEnginePage::featurePermissionRequested, + [this, page](const QUrl &securityOrigin, QWebEnginePage::Feature feature) { + if (feature != QWebEnginePage::Geolocation) + return; + + QMessageBox msgBox(this); + msgBox.setText(tr("%1 wants to know your location").arg(securityOrigin.host())); + msgBox.setInformativeText(tr("Do you want to send your current location to this website?")); + msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No); + msgBox.setDefaultButton(QMessageBox::Yes); + + if (msgBox.exec() == QMessageBox::Yes) { + page->setFeaturePermission( + securityOrigin, feature, QWebEnginePage::PermissionGrantedByUser); + } else { + page->setFeaturePermission( + securityOrigin, feature, QWebEnginePage::PermissionDeniedByUser); + } + }); + + page->load(QUrl(QStringLiteral("https://maps.google.com"))); +} diff --git a/examples/webenginewidgets/maps/mainwindow.h b/examples/webenginewidgets/maps/mainwindow.h new file mode 100644 index 000000000..c4377caaf --- /dev/null +++ b/examples/webenginewidgets/maps/mainwindow.h @@ -0,0 +1,56 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the examples of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +#include <QMainWindow> +#include <QWebEngineView> + +class MainWindow : public QMainWindow +{ + Q_OBJECT +public: + explicit MainWindow(QWidget *parent = nullptr); + +private: + QWebEngineView *m_view; +}; + +#endif // MAINWINDOW_H diff --git a/examples/webenginewidgets/maps/maps.pro b/examples/webenginewidgets/maps/maps.pro new file mode 100644 index 000000000..3fee49077 --- /dev/null +++ b/examples/webenginewidgets/maps/maps.pro @@ -0,0 +1,12 @@ +TEMPLATE = app + +QT += webenginewidgets + +HEADERS += \ + mainwindow.h + +SOURCES += main.cpp \ + mainwindow.cpp + +target.path = $$[QT_INSTALL_EXAMPLES]/webenginewidgets/maps +INSTALLS += target diff --git a/examples/webenginewidgets/webenginewidgets.pro b/examples/webenginewidgets/webenginewidgets.pro index 41582bbf7..78db442b9 100644 --- a/examples/webenginewidgets/webenginewidgets.pro +++ b/examples/webenginewidgets/webenginewidgets.pro @@ -9,6 +9,8 @@ SUBDIRS += \ simplebrowser \ videoplayer +qtHaveModule(positioning): SUBDIRS += maps + contains(WEBENGINE_CONFIG, use_spellchecker):!cross_compile { !contains(WEBENGINE_CONFIG, use_native_spellchecker) { SUBDIRS += spellchecker -- GitLab