summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-08-02 11:30:25 +0200
committerLiang Qi <liang.qi@qt.io>2016-08-02 11:30:25 +0200
commitc4031710944db746bc5787120ec0bccb2e71b96c (patch)
tree9edaf32855153be42b2eac66816610a774c72b2e
parent903a6bb947bd55bc6f05cf021427e040c1355459 (diff)
parent08cb6659a4bfd441760c26ab7f405c439c7d6ca3 (diff)
Merge remote-tracking branch 'origin/5.7' into devv5.8.0-alpha1
Conflicts: .qmake.conf Change-Id: Ia7fce4a67be91168e541fbb61ae6892f58012912
-rw-r--r--LICENSE.GPLv22
-rw-r--r--LICENSE.GPLv32
-rw-r--r--LICENSE.LGPLv32
-rw-r--r--dist/changes-5.6.130
-rw-r--r--dist/changes-5.7.021
-rw-r--r--src/jar/src/org/qtproject/qt5/android/view/QtAndroidWebViewController.java22
-rw-r--r--src/webview/doc/qtwebview.qdocconf2
-rw-r--r--src/webview/qquickwebview.cpp4
-rw-r--r--src/webview/qwebview_android.cpp5
-rw-r--r--src/webview/qwebview_winrt.cpp5
10 files changed, 89 insertions, 6 deletions
diff --git a/LICENSE.GPLv2 b/LICENSE.GPLv2
index 6dbb032..a424477 100644
--- a/LICENSE.GPLv2
+++ b/LICENSE.GPLv2
@@ -3,7 +3,7 @@
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
Contact: http://www.qt.io/licensing/
- You may use, distribute and copy the Qt GUI Toolkit under the terms of
+ You may use, distribute and copy the Qt Toolkit under the terms of
GNU General Public License version 2, which is displayed below.
-------------------------------------------------------------------------
diff --git a/LICENSE.GPLv3 b/LICENSE.GPLv3
index 4e49b12..71c4ad4 100644
--- a/LICENSE.GPLv3
+++ b/LICENSE.GPLv3
@@ -3,7 +3,7 @@
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
Contact: http://www.qt.io/licensing/
- You may use, distribute and copy the Qt GUI Toolkit under the terms of
+ You may use, distribute and copy the Qt Toolkit under the terms of
GNU Lesser General Public License version 3. That license references
the General Public License version 3, that is displayed below. Other
portions of the Qt Toolkit may be licensed directly under this license.
diff --git a/LICENSE.LGPLv3 b/LICENSE.LGPLv3
index 4d67bac..6bf924c 100644
--- a/LICENSE.LGPLv3
+++ b/LICENSE.LGPLv3
@@ -3,7 +3,7 @@
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
Contact: http://www.qt.io/licensing/
- You may use, distribute and copy the Qt GUI Toolkit under the terms of
+ You may use, distribute and copy the Qt Toolkit under the terms of
GNU Lesser General Public License version 3, which is displayed below.
This license makes reference to the version 3 of the GNU General
Public License, which you can find in the LICENSE.GPLv3 file.
diff --git a/dist/changes-5.6.1 b/dist/changes-5.6.1
new file mode 100644
index 0000000..150bc61
--- /dev/null
+++ b/dist/changes-5.6.1
@@ -0,0 +1,30 @@
+Qt 5.6.1 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.6.0.
+
+For more details, refer to the online documentation included in this
+distribution. The documentation is also available online:
+
+ http://doc.qt.io/qt-5.6/
+
+The Qt version 5.6 series is binary compatible with the 5.5.x series.
+Applications compiled for 5.5 will continue to run with 5.6.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+ http://bugreports.qt.io/
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+****************************************************************************
+* Platform Specific Changes *
+****************************************************************************
+Android
+-------
+- [QTBUG-51198] Fixed problem with clipping when High DPI mode is enabled.
+
+iOS
+---
+- The minibrowser example will now load non-https URLs.
+- [QTBUG-48221] Improved the usability together with QQuickWidget.
diff --git a/dist/changes-5.7.0 b/dist/changes-5.7.0
new file mode 100644
index 0000000..a36a4a4
--- /dev/null
+++ b/dist/changes-5.7.0
@@ -0,0 +1,21 @@
+Qt 5.7 introduces many new features and improvements as well as bugfixes
+over the 5.6.x series. For more details, refer to the online documentation
+included in this distribution. The documentation is also available online:
+
+ http://doc.qt.io
+
+The Qt version 5.7 series is binary compatible with the 5.6.x series.
+Applications compiled for 5.6 will continue to run with 5.7.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+ https://bugreports.qt.io
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+****************************************************************************
+* General *
+****************************************************************************
+ - This release contains only minor improvements.
diff --git a/src/jar/src/org/qtproject/qt5/android/view/QtAndroidWebViewController.java b/src/jar/src/org/qtproject/qt5/android/view/QtAndroidWebViewController.java
index 1c46847..0f4b424 100644
--- a/src/jar/src/org/qtproject/qt5/android/view/QtAndroidWebViewController.java
+++ b/src/jar/src/org/qtproject/qt5/android/view/QtAndroidWebViewController.java
@@ -39,12 +39,15 @@ package org.qtproject.qt5.android.view;
import android.content.pm.PackageManager;
import android.view.View;
import android.webkit.GeolocationPermissions;
+import android.webkit.URLUtil;
import android.webkit.ValueCallback;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebChromeClient;
import java.lang.Runnable;
import android.app.Activity;
+import android.content.Intent;
+import android.net.Uri;
import java.lang.String;
import android.webkit.WebSettings;
import android.util.Log;
@@ -106,6 +109,25 @@ public class QtAndroidWebViewController
QtAndroidWebViewClient() { super(); }
@Override
+ public boolean shouldOverrideUrlLoading(WebView view, String url)
+ {
+ // handle http: and http:, etc., as usual
+ if (URLUtil.isValidUrl(url))
+ return false;
+
+ // try to handle geo:, tel:, mailto: and other schemes
+ try {
+ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
+ view.getContext().startActivity(intent);
+ return true;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ return false;
+ }
+
+ @Override
public void onLoadResource(WebView view, String url)
{
super.onLoadResource(view, url);
diff --git a/src/webview/doc/qtwebview.qdocconf b/src/webview/doc/qtwebview.qdocconf
index ae7e25c..96cf19e 100644
--- a/src/webview/doc/qtwebview.qdocconf
+++ b/src/webview/doc/qtwebview.qdocconf
@@ -35,7 +35,7 @@ exampledirs += ../../../examples/webview
imagedirs += images
examplesinstallpath = webview
-depends = qtcore qtdoc qtquick qtqml
+depends = qtcore qtdoc qtgui qtquick qtqml
Cpp.ignoretokens += Q_WEBVIEW_EXPORT
diff --git a/src/webview/qquickwebview.cpp b/src/webview/qquickwebview.cpp
index 1729f83..d760564 100644
--- a/src/webview/qquickwebview.cpp
+++ b/src/webview/qquickwebview.cpp
@@ -82,6 +82,10 @@ Q_GLOBAL_STATIC(CallbackStorage, callbacks)
APIs on the platforms where this is available, thus it does not necessarily require
including a full web browser stack as part of the application.
+ To make the Qt WebView module function correctly across all platforms, it is necessary
+ to call \l {qtwebview-initialize}{QtWebView::initialize}() right after creating the
+ QGuiApplication instance.
+
\note Due to platform limitations overlapping the WebView and other QML components
is not supported.
*/
diff --git a/src/webview/qwebview_android.cpp b/src/webview/qwebview_android.cpp
index 54f6a3d..1783deb 100644
--- a/src/webview/qwebview_android.cpp
+++ b/src/webview/qwebview_android.cpp
@@ -401,6 +401,11 @@ static void c_onReceivedError(JNIEnv *env,
JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* /*reserved*/)
{
+ static bool initialized = false;
+ if (initialized)
+ return JNI_VERSION_1_6;
+ initialized = true;
+
typedef union {
JNIEnv *nativeEnvironment;
void *venv;
diff --git a/src/webview/qwebview_winrt.cpp b/src/webview/qwebview_winrt.cpp
index eb78439..5895ec4 100644
--- a/src/webview/qwebview_winrt.cpp
+++ b/src/webview/qwebview_winrt.cpp
@@ -45,6 +45,7 @@
#include <QScreen>
#include <qfunctions_winrt.h>
#include <private/qeventdispatcher_winrt_p.h>
+#include <private/qhighdpiscaling_p.h>
#include <wrl.h>
#include <windows.graphics.display.h>
@@ -488,8 +489,8 @@ void QWinRTWebViewPrivate::setGeometry(const QRect &geometry)
const QScreen *screen = d->window->screen();
Q_ASSERT(screen);
const QPoint screenTopLeft = screen->availableGeometry().topLeft();
- const QPointF topLeft = QPointF(geometry.topLeft() + screenTopLeft) * scaleFactor;
- const QSizeF size = QSizeF(geometry.size()) * scaleFactor;
+ const QPointF topLeft = QHighDpi::toNativePixels(QPointF(geometry.topLeft() + screenTopLeft) * scaleFactor, screen);
+ const QSizeF size = QHighDpi::toNativePixels(QSizeF(geometry.size()) * scaleFactor, screen);
#else
ResolutionScale resolutionScale;
hr = d->displayInformation->get_ResolutionScale(&resolutionScale);