diff options
author | Liang Qi <liang.qi@qt.io> | 2016-11-04 11:49:02 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-11-04 11:53:49 +0100 |
commit | 6189de6015764dd4a14774f2e08344c4cd085f69 (patch) | |
tree | aaadc8bf672ffde1d7bfa3080eeec416271a6c5c /src | |
parent | ea2dafb7d07500e83b59fd708a9634a5e1135425 (diff) | |
parent | 6bb3d98e47d89790049edca796843345b8fd3c8b (diff) |
Merge remote-tracking branch 'origin/5.6' into 5.7
Also apply a4b04e4c on src/webengine/doc/src/qtwebengine-deploying.qdoc,
use the macro \macos.
Conflicts:
src/core/media_capture_devices_dispatcher.cpp
src/webengine/doc/src/qtwebengine-deploying.qdoc
src/webengine/doc/src/qtwebengine-platform-notes.qdoc
Change-Id: Ia6092a56bfe23da7c06f5389718ebbc9b78ef820
Diffstat (limited to 'src')
-rw-r--r-- | src/core/content_client_qt.cpp | 3 | ||||
-rw-r--r-- | src/core/media_capture_devices_dispatcher.cpp | 1 | ||||
-rw-r--r-- | src/core/web_engine_context.cpp | 13 | ||||
-rw-r--r-- | src/webengine/doc/src/qtwebengine-deploying.qdoc | 10 | ||||
-rw-r--r-- | src/webengine/doc/src/qtwebengine-features.qdoc | 1 | ||||
-rw-r--r-- | src/webengine/doc/src/qtwebengine-overview.qdoc | 4 | ||||
-rw-r--r-- | src/webengine/doc/src/qtwebengine-platform-notes.qdoc | 16 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 2 | ||||
-rw-r--r-- | src/webenginewidgets/doc/src/qwebenginesettings_lgpl.qdoc | 4 | ||||
-rw-r--r-- | src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp | 7 | ||||
-rw-r--r-- | src/webenginewidgets/webenginewidgets.pro | 2 |
11 files changed, 32 insertions, 31 deletions
diff --git a/src/core/content_client_qt.cpp b/src/core/content_client_qt.cpp index 0418873be..2afd8c3ae 100644 --- a/src/core/content_client_qt.cpp +++ b/src/core/content_client_qt.cpp @@ -168,7 +168,8 @@ void AddPepperFlashFromSystem(std::vector<content::PepperPluginInfo>* plugins) #endif #if defined(Q_OS_LINUX) pluginPaths << "/opt/google/chrome/PepperFlash/libpepflashplayer.so" // Google Chrome - << "/usr/lib/pepperflashplugin-nonfree/libpepflashplayer.so" // Ubuntu + << "/usr/lib/pepperflashplugin-nonfree/libpepflashplayer.so" // Ubuntu, package pepperflashplugin-nonfree + << "/usr/lib/adobe-flashplugin/libpepflashplayer.so" // Ubuntu, package adobe-flashplugin << "/usr/lib/PepperFlash/libpepflashplayer.so" // Arch << "/usr/lib64/chromium/PepperFlash/libpepflashplayer.so"; // OpenSuSE pluginPaths << ppapiPluginsPath() + QStringLiteral("/libpepflashplayer.so"); diff --git a/src/core/media_capture_devices_dispatcher.cpp b/src/core/media_capture_devices_dispatcher.cpp index b38e90c69..9683245a0 100644 --- a/src/core/media_capture_devices_dispatcher.cpp +++ b/src/core/media_capture_devices_dispatcher.cpp @@ -165,7 +165,6 @@ void MediaCaptureDevicesDispatcher::handleMediaAccessPermissionResponse(content: if (securityOriginsMatch && (microphoneRequested || webcamRequested)) { switch (request.request_type) { case content::MEDIA_OPEN_DEVICE_PEPPER_ONLY: - Q_UNREACHABLE(); // only speculative as this is for Pepper getDefaultDevices("", "", microphoneRequested, webcamRequested, &devices); break; case content::MEDIA_DEVICE_ACCESS: diff --git a/src/core/web_engine_context.cpp b/src/core/web_engine_context.cpp index bf6a6a172..0d1d7b127 100644 --- a/src/core/web_engine_context.cpp +++ b/src/core/web_engine_context.cpp @@ -313,7 +313,7 @@ WebEngineContext::WebEngineContext() const char *glType = 0; if (!usingANGLE() && !usingSoftwareDynamicGL() && !usingQtQuick2DRenderer()) { - if (qt_gl_global_share_context()) { + if (qt_gl_global_share_context() && qt_gl_global_share_context()->isValid()) { if (!strcmp(qt_gl_global_share_context()->nativeHandle().typeName(), "QEGLNativeContext")) { if (qt_gl_global_share_context()->isOpenGLES()) { glType = gfx::kGLImplementationEGLName; @@ -347,16 +347,7 @@ WebEngineContext::WebEngineContext() glType = gfx::kGLImplementationDesktopName; } } else { - qWarning("WebEngineContext used before QtWebEngine::initialize()"); - // We have to assume the default OpenGL module type will be used. - switch (QOpenGLContext::openGLModuleType()) { - case QOpenGLContext::LibGL: - glType = gfx::kGLImplementationDesktopName; - break; - case QOpenGLContext::LibGLES: - glType = gfx::kGLImplementationEGLName; - break; - } + qWarning("WebEngineContext used before QtWebEngine::initialize() or OpenGL context creation failed."); } } diff --git a/src/webengine/doc/src/qtwebengine-deploying.qdoc b/src/webengine/doc/src/qtwebengine-deploying.qdoc index b6b91f2e9..25b6d218c 100644 --- a/src/webengine/doc/src/qtwebengine-deploying.qdoc +++ b/src/webengine/doc/src/qtwebengine-deploying.qdoc @@ -30,7 +30,7 @@ \title Deploying Qt WebEngine Applications The way to package and deploy applications varies between operating systems. - For Windows and macOS, \l{The Windows Deployment Tool}{windeployqt} and + For Windows and \macos, \l{The Windows Deployment Tool}{windeployqt} and \l{Deploying Applications on OS X}{macdeployqt} automate the steps to generate a stand-alone application package. @@ -47,7 +47,7 @@ limitations are: \list - \li Qt WebEngine currently supports only Windows, Linux, and macOS. + \li Qt WebEngine currently supports only Windows, Linux, and \macos. \li On Windows, Qt WebEngine only supports Windows Vista or newer as target platform. Due to use of newer API in Chromium, Windows XP is @@ -102,7 +102,7 @@ For Qt installations, this is \c QTDIR/libexec (Linux) or \c QTDIR\bin (Windows). The path can be changed by defining a \c qt.conf file, for example. Alternatively, an executable path can be set as a value of the - \c QTWEBENGINEPROCESS_PATH environment variable. On macOS, Qt WebEngine + \c QTWEBENGINEPROCESS_PATH environment variable. On \macos, Qt WebEngine looks for the executable in \c .app/Helpers/QtWebEngineProcess. \section2 Deploying Resources @@ -128,7 +128,7 @@ \list \li On Linux and Windows: the \c resources directory in the directory specified by QLibraryInfo::location(QLibraryInfo::DataPath) - \li On macOS: \c .app/Content/Resources + \li On \macos: \c .app/Content/Resources \endlist \section2 Translations @@ -136,7 +136,7 @@ Locale data (such as \c en-US.pak) is searched form the following locations: \list - \li On macOS: \c .app/Content/Resources + \li On \macos: \c .app/Content/Resources \li On Linux and Windows: \c qtwebengine_locales directory in the directory specified by QLibraryInfo::location(QLibraryInfo::TranslationsPath) diff --git a/src/webengine/doc/src/qtwebengine-features.qdoc b/src/webengine/doc/src/qtwebengine-features.qdoc index 52f7da928..62a09bb91 100644 --- a/src/webengine/doc/src/qtwebengine-features.qdoc +++ b/src/webengine/doc/src/qtwebengine-features.qdoc @@ -185,6 +185,7 @@ \li Linux \code /usr/lib/pepperflashplugin-nonfree/libpepflashplayer.so + /usr/lib/adobe-flashplugin/libpepflashplayer.so /usr/lib/PepperFlash/libpepflashplayer.so /usr/lib64/chromium/PepperFlash/libpepflashplayer.so \endcode diff --git a/src/webengine/doc/src/qtwebengine-overview.qdoc b/src/webengine/doc/src/qtwebengine-overview.qdoc index 6b5ccaa14..6c05b2e48 100644 --- a/src/webengine/doc/src/qtwebengine-overview.qdoc +++ b/src/webengine/doc/src/qtwebengine-overview.qdoc @@ -197,7 +197,7 @@ \section1 Proxy Support If QNetworkProxy::applicationProxy is set, it will also be used for Qt WebEngine. Otherwise, - Qt WebEngine automatically picks up the proxy configuration from OS X and Windows. On Linux, + Qt WebEngine automatically picks up the proxy configuration from \macos and Windows. On Linux, it acknowledges settings from KDE and Gnome. If a proxy requires authentication, QWebEnginePage::proxyAuthenticationRequired is emitted. @@ -247,7 +247,7 @@ \section1 Platform Notes - Qt WebEngine currently supports only Windows, Linux, and OS X. Due to Chromium build + Qt WebEngine currently supports only Windows, Linux, and \macos. Due to Chromium build requirements it also often requires a newer compiler than the rest of Qt. See \l{Qt WebEngine Platform Notes} for further details. diff --git a/src/webengine/doc/src/qtwebengine-platform-notes.qdoc b/src/webengine/doc/src/qtwebengine-platform-notes.qdoc index f16258354..765295d30 100644 --- a/src/webengine/doc/src/qtwebengine-platform-notes.qdoc +++ b/src/webengine/doc/src/qtwebengine-platform-notes.qdoc @@ -41,7 +41,7 @@ \list \li \l{Qt for Windows - Requirements} \li \l{Qt for X11 Requirements} - \li \l{Qt for OS X - Requirements} + \li \l{Qt for macOS - Requirements} \endlist In addition, the following tools are required for building the \l {Qt WebEngine} module: @@ -50,7 +50,7 @@ \li \l {All Platforms} \li \l {Windows} \li \l {Linux} - \li \l {OS X} + \li \l {macOS} \endlist The tests for skipping the Qt WebEngine build are located in the @@ -99,17 +99,17 @@ Further, development packages for \c khr and \c libcap need to be installed. - \section2 OS X + \section2 \macos - On OS X, the following are required: + On \macos, the following are required: \list - \li OS X 10.9 or later + \li \macos 10.9 or later \li Xcode 6.1 or later - \li OS X 10.10 SDK or later + \li \macos 10.10 SDK or later \endlist - \note Qt WebEngine cannot be built for the 32-bit mode of OS X (using the + \note Qt WebEngine cannot be built for the 32-bit mode of \macos (using the \c macx-clang-32 \c mkspec). \section1 Mac App Store Compatibility @@ -137,7 +137,7 @@ before the application instance is declared, to make sure that all created OpenGL contexts use the same OpenGL profile. - On OS X, if the default QSurfaceFormat is set after the application instance, the application + On \macos, if the default QSurfaceFormat is set after the application instance, the application will exit with qFatal(), and print a message that the default QSurfaceFormat should be set before the application instance. */ diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 10b4452fb..aad8ba058 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -1467,6 +1467,8 @@ void QWebEnginePagePrivate::runFileChooser(FilePickerController *controller) controller->accepted(selectedFileNames); else controller->rejected(); + + delete controller; } WebEngineSettings *QWebEnginePagePrivate::webEngineSettings() const diff --git a/src/webenginewidgets/doc/src/qwebenginesettings_lgpl.qdoc b/src/webenginewidgets/doc/src/qwebenginesettings_lgpl.qdoc index ccb002404..07c4965d0 100644 --- a/src/webenginewidgets/doc/src/qwebenginesettings_lgpl.qdoc +++ b/src/webenginewidgets/doc/src/qwebenginesettings_lgpl.qdoc @@ -151,12 +151,12 @@ /*! \fn void QWebEngineSettings::setFontSize(FontSize type, int size) - Sets the font size for \a type to \a size. + Sets the font size for \a type to \a size in pixels. */ /*! \fn int QWebEngineSettings::fontSize(FontSize type) const - Returns the default font size for \a type. + Returns the default font size for \a type in pixels. */ /*! diff --git a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp index 28c40fed5..23a203eab 100644 --- a/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp +++ b/src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp @@ -51,6 +51,7 @@ #include <QWindow> #include <private/qsgcontext_p.h> #include <private/qsgengine_p.h> +#include <private/qwidget_p.h> namespace QtWebEngineCore { @@ -340,6 +341,12 @@ bool RenderWidgetHostViewQtDelegateWidget::event(QEvent *event) } } + QEvent::Type type = event->type(); + if (type == QEvent::FocusIn) { + QWidgetPrivate *d = QWidgetPrivate::get(this); + d->updateWidgetTransform(event); + } + if (event->type() == QEvent::MouseButtonDblClick) { // QWidget keeps the Qt4 behavior where the DblClick event would replace the Press event. // QtQuick is different by sending both the Press and DblClick events for the second press diff --git a/src/webenginewidgets/webenginewidgets.pro b/src/webenginewidgets/webenginewidgets.pro index cd9a2d10b..279ec79f8 100644 --- a/src/webenginewidgets/webenginewidgets.pro +++ b/src/webenginewidgets/webenginewidgets.pro @@ -4,7 +4,7 @@ TARGET = QtWebEngineWidgets DEFINES += QT_BUILD_WEBENGINEWIDGETS_LIB QT += webenginecore widgets network quick -QT_PRIVATE += quick-private gui-private core-private +QT_PRIVATE += quick-private gui-private core-private widgets-private INCLUDEPATH += $$PWD api ../core ../core/api ../webengine/api |